A. 怎麼學習python量化交易
下面教你八步寫個量化交易策略——單股票均線策略
1 確定策略內容與框架
若昨日收盤價高出過去20日平均價今天開盤買入股票
若昨日收盤價低於過去20日平均價今天開盤賣出股票
只操作一隻股票,很簡單對吧,但怎麼用代碼說給計算機聽呢?
想想人是怎麼操作的,應該包括這樣兩個部分
既然是單股票策略,事先決定好交易哪一個股票。
每天看看昨日收盤價是否高出過去20日平均價,是的話開盤就買入,不是開盤就賣出。每天都這么做,循環下去。
對應代碼也是這兩個部分
definitialize(context):
用來寫最開始要做什麼的地方
defhandle_data(context,data):
用來寫每天循環要做什麼的地方
2 初始化
我們要寫設置要交易的股票的代碼,比如 兔寶寶(002043)
definitialize(context):
g.security='002043.XSHE'#存入兔寶寶的股票代碼
3 獲取收盤價與均價
首先,獲取昨日股票的收盤價
#用法:變數=data[股票代碼].close
last_price=data[g.security].close#取得最近日收盤價,命名為last_price
然後,獲取近二十日股票收盤價的平均價
#用法:變數=data[股票代碼].mavg(天數,『close』)
#獲取近二十日股票收盤價的平均價,命名為average_price
average_price=data[g.security].mavg(20,'close')
4 判斷是否買賣
數據都獲取完,該做買賣判斷了
#如果昨日收盤價高出二十日平均價,則買入,否則賣出
iflast_price>average_price:
買入
eliflast_price<average_price:
賣出
問題來了,現在該寫買賣下單了,但是拿多少錢去買我們還沒有告訴計算機,所以每天還要獲取賬戶里現金量。
#用法:變數=context.portfolio.cash
cash=context.portfolio.cash#取得當前的現金量,命名為cash
5 買入賣出
#用法:order_value(要買入股票股票的股票代碼,要多少錢去買)
order_value(g.security,cash)#用當前所有資金買入股票
#用法:order_target(要買賣股票的股票代碼,目標持倉金額)
order_target(g.security,0)#將股票倉位調整到0,即全賣出
6 策略代碼寫完,進行回測
把買入賣出的代碼寫好,策略就寫完了,如下
definitialize(context):#初始化
g.security='002043.XSHE'#股票名:兔寶寶
defhandle_data(context,data):#每日循環
last_price=data[g.security].close#取得最近日收盤價
#取得過去二十天的平均價格
average_price=data[g.security].mavg(20,'close')
cash=context.portfolio.cash#取得當前的現金
#如果昨日收盤價高出二十日平均價,則買入,否則賣出。
iflast_price>average_price:
order_value(g.security,cash)#用當前所有資金買入股票
eliflast_price<average_price:
order_target(g.security,0)#將股票倉位調整到0,即全賣出
現在,在策略回測界面右上部,設置回測時間從20140101到20160601,設置初始資金100000,設置回測頻率,然後點擊運行回測。
7 建立模擬交易,使策略和行情實時連接自動運行
策略寫好,回測完成,點擊回測結果界面(如上圖)右上部紅色模擬交易按鈕,新建模擬交易如下圖。 寫好交易名稱,設置初始資金,數據頻率,此處是每天,設置好後點提交。
8 開啟微信通知,接收交易信號
點擊聚寬導航欄我的交易,可以看到創建的模擬交易,如下圖。 點擊右邊的微信通知開關,將OFF調到ON,按照指示掃描二維碼,綁定微信,就能微信接收交易信號了。
B. 怎樣編程可以讓通達信程序化交易
最通俗的回答就是:按照通達信的編寫規則,編寫正確了就可以進行程序化交易。
這個東西專業的人也沒法回答你,你編寫正確了就可以。具體怎樣你要問的具體點
C. 期貨量化交易編程怎麼弄
方法:1、前提是你必須有自己的期貨交易賬戶,每個期貨公司都可以開,現在不用出門就可以用手機在線開戶。
2、其次,要選擇合適的交易軟體。其中交易開拓者的軟體是最好編程的,很多交易團隊基本都在用這個軟體。確定賬戶和交易軟體。
3、剩下的就是如何用編程語言編寫策略,並將其輸入交易軟體。編程其實並不難。在程序化交易中,程序化只佔程序化交易的30%。好的編程可以簡化代碼,提高運行速度,增加交易策略的多樣性和完整性,實現一些復雜的策略。
4、如果沒有這方面的編程能力,可以參加期貨交易的相關培訓課程。另外70%主要是策略、倉位設置、交易品種選擇、程序化交易心態控制、網路設置等的組合管理。
拓展資料:
1、 戰略的確定。一個成功的量化交易系統的開發過程必須是恰當的。如何找到一個成功的量化交易策略,是構建量化交易體系的基礎。無論是基本面還是技術面,都可以用量化的方法進行分析,進而得出量化的交易策略。比如,從根本上說,GDP的增長和貨幣流通量的增加可以用定量的方法來分析和描述。技術上,移動平均線和指數smma是物理和化學策略思想的來源。
2、 經典理論。很多量化投資策略思路來源於傳統經典投資理論,比如經典商品期貨技術分析主要包括技術分析的理論基礎、道指理論、圖表介紹、趨勢基本概念、主要反轉形態、持續形態、交易量和倉位興趣、長期圖表和商品指數、移動平均線、擺動指數和相反意見、盤中點圖、三點轉向和優化點圖、艾略特波浪理論、時間周期等等。這些經典理論有的有具體的指標和具體的應用理論,有的只有理論,需要根據理論生成具體的應用指標來完成策略的測試。因此,經典投資理論可以通過量化思維將理論中的具體邏輯量化為指標或事件形成交易信號,通過信號優化檢驗實現經典理論的投資思路。這種方式可以有效實現經典理論,同時也可以從原有的經典理論中衍生出周邊的投資方法,是量化策略發展初期的主流模式。
3、 邏輯推理。邏輯學的戰略思維大多來源於宏觀基礎信息,其量化戰略思維是通過對宏觀信息的量化處理,梳理出符合宏觀基礎信息的量化模型。典型的量化策略包括行業輪動量化策略、市場情緒輪動量化策略、上下游供需量化策略等。這種策略思路來源非常廣泛,數據一般不規范,很難形成標准。目前,許多對沖基金都有類似的想法來生成量化策略產品。
4、 總結經驗。經驗總結是量化戰略思想的另一個主要來源。在使用量化策略交易之前,市場上有大量經驗豐富的投資者,其中許多人在長期穩定回報方面表現突出。因此,他們對市場的看法和交易思路成為了量化策略開發者的模仿對象,有經驗的交易者也願意量化一些他們覺得相對固化、能夠獲得穩定回報的交易策略,最終可以用機器自動交易,只監控交易。這可以大大減少交易中消耗的能量。在這個前提下,出現了一個與經驗豐富的交易者合作的量化策略團隊。
操作環境:iPad第九代15.1 交易開拓者4.5.2