量化合約開發系統程式碼流程(Python)*合約量化系統開發定製技術流程
量化投資都是一門高大上的技術,充斥著模型程式碼和演算法假設,門檻非常高。其實,生活中的量化思想無處不在。digital開發18o_2857_8624D☆v collection
量化交易系統有很多種,包括跨平臺搬磚、趨勢交易、對沖交易等。
1.Cross-platform brick moving means that when the price difference between different target platforms reaches a certain amount,it is sold on the platform with high price and bought on the platform with low price.
2.Trend trading will be more complex.It sends out signals of selling and buying according to the indicators of the trend.
3.Hedging refers to the simultaneous execution of two transactions related to the market,with opposite buying and selling directions,equal quantities,and balanced profits and losses to achieve the effect of hedging risks.
傳送下單指令.注意:指令將在下次呼叫:py:meth:wait_update時發出
“”"
if self._loop.is_running():#事件迴圈正在執行
#把下單請求函式打包成task排入事件迴圈
self.create_task(self._insert_order_async(...))
#下單後獲取委託單order
order=self.get_order(order_id,account=account)
#更新委託單欄位
order.update({"order_id":order_id,"exchange_id":exchange_id,...})
return order#返回委託單
else:#事件迴圈還未執行
#打包一個指令包
pack=self._get_insert_order_pack(...)
#傳送指令包
self._send_pack(pack)
##下單後獲取委託單order
order=self.get_order(order_id,account=account)
#更新委託單欄位
order.update({"order_id":order_id,"exchange_id":exchange_id,...})
return order#返回委託單
#傳送指令包函式
def _send_pack(self,pack):
#立即向佇列傳送指令包
if not self._is_slave:
self._send_chan.send_nowait(pack)
else:
self._master._slave_send_pack(pack)
#下單請求函式
async def _insert_order_async(…):
#打包一個指令包
pack=self._get_insert_order_pack(...)
#傳送指令包
self._send_pack(pack)
下單的主要流程為:用協程任務打包一個指令包再發出去。create_task是無阻塞的,建立完task立即返回,get_order獲取委託單也是無阻塞的,因此insert_order執行後會立即返回一個Order物件引用——order,不會等待委託單成交與否。
create_task把下單函式打包成task排入事件迴圈,需要在呼叫wait_update啟動事件迴圈時才能執行該task並從佇列取出指令包併傳送向服務端。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70016646/viewspace-2933724/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Python TensorFlow深度學習迴歸程式碼:DNNRegressor
- CTO偷偷傳我的系統效能最佳化十大絕招(萬字乾貨)
- 寫了個監控 ElasticSearch 程式異常的指令碼!
- 直播商城系統原始碼,播放器aliPlayer自定義清晰度切換
- 數商雲供應鏈協同系統採購合同電子化管理,助力快消品行業補強供應鏈短板
- 線上直播系統原始碼,uniapp踩坑之uni-ui,不顯示uni-list列表
- Python程式碼打包成可執行檔案的常用方法!
- 基於 Flink+Pravega 的遊戲伺服器監控與調節系統設計
- 廣發證券基於分散式架構的新一代估值系統實踐
- MetaForce佛薩奇系統開發技術流程(成熟程式碼)佛薩奇2.0原始碼部署教程
- Meta Force佛薩奇2.0版原始碼成熟系統開發詳細講解(技術說明)
- 帶您瞭解TRIZ理論解決問題的流程
- NFT數字藏品系統開發原始碼部署丨NFT鏈遊元宇宙遊戲系統開發原始碼搭建
- 區塊鏈專案技術開發(公鏈、礦機、交易所、DAPP)成熟技術系統開發
- 泰山眾籌商城開發、泰山眾籌DAPP系統開發、泰山眾籌原始碼部署開發
- 低程式碼開發平臺 開啟數字化轉型普惠之門
- SaaS CRM系統的四大優勢
- 智勝空天·安全護航 | 無人機系統安全問題和防護技術
- wixtoolset visualstudio 2017打包流程(1)