均線價格波動策略(TBQ版)_第1頁
均線價格波動策略(TBQ版)_第2頁
均線價格波動策略(TBQ版)_第3頁
均線價格波動策略(TBQ版)_第4頁
均線價格波動策略(TBQ版)_第5頁
已閱讀5頁,還剩4頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

均線價格波動策略(TBQ版)本策略是一個基于均線價格波動的交易策略,旨在通過計算價格的移動平均值來判斷市場趨勢,并據此進行買賣操作。策略的核心邏輯包括數據源設置、交易參數配置、指標計算和交易執行四個部分。數據源設置在`OnInit()`函數中,策略首先對數據源進行了一系列設置,以確保數據的準確性和一致性。這些設置包括:-設置后復權(`Enum_Data_RolloverBackWard()`)和映射真實價格(`Enum_Data_RolloverRealPrice()`),以便更真實地反映市場情況。-設置自動換倉(`Enum_Data_AutoSwapPosition()`)和忽略換倉信號計算(`Enum_Data_IgnoreSwapSignalCalc()`),以優化交易性能和統計結果。-設置換月時頭寸為等持倉量(`SetSwapPosVolType(2)`)。交易參數配置策略在`OnInit()`函數中還配置了交易相關的參數,如初始資金(`SetInitCapital(Fund*10000)`)和其他一些未詳細說明的參數(如`len68`,`var0`到`var8`等)。指標計算在`OnBar()`函數中,策略計算了一些未明確命名的指標(`var5`到`var8`),并將它們繪制成圖表以供參考。交易執行`OnBar()`函數是策略的核心,它根據當前市場價格(`C[1]`)和預先計算的指標(`var5`到`var8`)來決定買入或賣出。具體的交易邏輯如下:-如果當前沒有多頭倉位且市場價格高于`var5`和`var7`的最大值,則買入。-如果當前有多頭倉位且市場價格低于`var0`和`var7`的最小值,則賣出平倉。-如果當前沒有空頭倉位且市場價格低于`var6`和`var8`的最小值,則賣出開倉。-如果當前有空頭倉位且市場價格高于`var0`和`var8`的最大值,則買入平倉。策略特點1.基于均線的趨勢判斷:策略主要依賴于均線(雖然具體計算方法未詳細說明)來判斷市場趨勢。2.自動化交易:策略實現了自動化的買賣邏輯,減少了人為干預。3.優化交易性能:通過設置自動換倉和忽略換倉信號計算,策略旨在優化交易性能和統計結果。4.簡單直觀的交易邏輯:交易邏輯相對簡單,基于價格和指標的比較來決定買賣操作。本策略是一個基于均線價格波動的自動化交易策略,通過設置數據源、交易參數、計算指標和執行交易來實現市場趨勢的判斷和交易操作。其特點是自動化程度高、交易邏輯簡單直觀,并通過一些優化措施來提升交易性能。函數代碼:ParamsSeries<Numeric>Price(0);//數值型序列值NumericLength(20);//周期數VarsNumericSumValue(0);BeginSumValue=0;If(Price!=0){SumValue=AverageFC(Price,Length);}Else{SumValue=AverageFC(C,Length);}ReturnSumValue;End策略代碼:ParamsIntegerlen68(68);Numericvar0;Numericvar1;Numericvar2;Numericvar3;Numericvar4;Numericvar5;Numericvar6;Numericvar7;Numericvar8;Numericfund(50);Defs//此處添加公式函數Events//此處實現事件函數//初始化事件函數,策略運行期間,首先運行且只有一次OnInit(){//與數據源有關Range[0:DataCount-1]{//=========數據源相關設置==============AddDataFlag(Enum_Data_RolloverBackWard());//設置后復權AddDataFlag(Enum_Data_RolloverRealPrice());//設置映射真實價格AddDataFlag(Enum_Data_AutoSwapPosition());//設置自動換倉AddDataFlag(Enum_Data_IgnoreSwapSignalCalc());//設置忽略換倉信號計算/*備注:Enum_Data_IgnoreSwapSignalCalc,對于一個策略來說,換倉的這筆交易并不是策略規則產生的,所以將換倉前后的這兩筆交易合并為一筆能更好的統計策略性能。合并之后,交易盈虧依舊是真實的,只不過換倉前后的這兩筆交易算一筆交易,但是手續費會從測試報告中扣除。忽略換倉時,換倉后的開倉市值為原始的開倉市值。開倉均價按照原始開倉市值計算得來。*///AddDataFlag(Enum_Data_NotGenReport());//設置數據源不參與生成報告標志SetSwapPosVolType(2);//換月時頭寸:1=等市值,2=等持倉量//=========交易相關設置==============//SetOrderPriceOffset(2);//設置委托價為叫買/賣價偏移2跳//SetOrderMap2MainSymbol();//設置委托映射到主力}//與數據源無關//SetBeginBarMaxCount(10);//設置最大起始bar數為10//SetBackBarMaxCount(10);//設置最大回溯bar數為10//=========交易相關設置==============SetInitCapital(Fund*10000);//設置初始資金}//Bar更新事件函數,參數indexs表示變化的數據源圖層ID數組OnBar(ArrayRef<Integer>indexs){//指標計算var0=Average(close[1],len68);var1=highest(high[1],len68);var2=lowest(low[1],len68);var5=(var1+var2)/2+(var1-var2)*0.25;var6=(var1+var2)/2-(var1-var2)*0.25;var3=highest(high[1],len68*4);var4=lowest(low[1],len68*4);var7=(var3+var4)/2+(var3-var4)*0.25;var8=(var3+var4)/2-(var3-var4)*0.25;PlotNumeric("var5",var5);PlotNumeric("var6",var6);PlotNumeric("var7",var7);PlotNumeric("var8",var8);PlotAuto("var0",var0,0,White,Enum_Line,Enum_Dash,Enum_1Pix);//開平部分//開平條件Booll4e=C[1]>=Max(var5,var7);//多進Booll4x=C[1]<=Min(var0,var7);//賣平Bools4e=C[1]<=Min(var6,var8);//空進Bools4x=C[1]>=Max(var0,var8);//買平//進出場價格Numericl4e_price=Open;//開多價格Numericl4x_price=Open;//平多價格Numerics4e_price=Open;//開空價格Numerics4x_price=Open;//平空價格//頭寸Numericlots=1;//開平處理If(MarketPosition!=1&&l4e){Buy(lots,l4e_price);}If(MarketPosition!=-1&&s4e){SellShort(lots,s4e_price);

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論