CROA指標系統策略(TB版)_第1頁
CROA指標系統策略(TB版)_第2頁
CROA指標系統策略(TB版)_第3頁
CROA指標系統策略(TB版)_第4頁
CROA指標系統策略(TB版)_第5頁
已閱讀5頁,還剩9頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

CROA指標系統策略(TB版)本交易策略的核心在于結合兩個關鍵指標`AvgValue3`和`CORValue`來制定交易決策。交易思路:1.`AvgValue3`-趨勢識別`AvgValue3`是通過計算Close價格的前`DslowLength`個周期的平均值得到的,用于平滑價格數據并識別市場趨勢。當`AvgValue3`呈現上升趨勢時,市場可能處于多頭狀態;反之,當`AvgValue3`呈現下降趨勢時,市場可能處于空頭狀態。交易信號-買入信號:當價格從下方穿越`AvgValue3`時,表明市場可能開始進入上升趨勢,此時可考慮買入。-賣出信號:當價格從上方穿越`AvgValue3`時,表明市場可能開始進入下降趨勢,此時可考慮賣出。2.`CORValue`-相關性分析`CORValue`用于計算Close價格與`Data1.Close`價格之間的相關性,可能用于比較兩個不同市場或資產之間的相關性。相關性分析可以幫助交易者了解兩個市場或資產之間的聯動性,從而制定更準確的交易策略。-聯動買入/賣出:當`CORValue`顯示兩個市場或資產之間存在高度正相關時,如果主市場發出買入信號,則可以考慮在輔助市場也進行買入操作;同樣,如果主市場發出賣出信號,則可以考慮在輔助市場也進行賣出操作。-分散投資:當`CORValue`顯示兩個市場或資產之間存在低度或負相關時,可以考慮將資金分散投資到這兩個市場或資產中,以降低整體風險。3.交易邏輯在確定了基于`AvgValue3`和`CORValue`的交易信號后,需要結合當前的市場位置(多頭或空頭持倉)來制定具體的交易邏輯。例如,當市場處于多頭狀態時,只考慮買入和持有信號;當市場處于空頭狀態時,只考慮賣出和持有信號。注意事項-風險管理:在交易過程中,始終要注意風險管理,設置合理的止損和止盈點,以控制潛在損失。-資金管理:合理分配資金,避免將所有資金投入單一交易或市場。-持續學習:市場條件不斷變化,需要持續學習和調整交易策略以適應市場變化。輔助函數-`CallAuctionFilter()`函數用于檢查當前是否滿足某些交易條件,如果不滿足,則退出。函數Correlation,代碼如下:ParamsNumericSeriesPrice1(1);//聲明數值序列參數Price1,初值為1.//NumericSeriesPrice2(1);//聲明數值序列參數Price2,初值為1.//NumericLength(10);//聲明數值參數Length,初值為10.//VarsNumericMatches(0);//聲明數值變量Matches,初值為0.//BoolSeriesCon;//聲明布爾型序列變量Con。//Numerici;//聲明數值變量i。//BeginCon=(Price1>=Price1[1]andPrice2>=Price2[1])or(Price1<Price1[1]andPrice2<Price2[1]);//這括號里是用邏輯符合or連接,只要其中一個成立,就可以執行下列代碼。看第一個括號,假如當前k線的價格Price1大于等于前一k線的價格Price1,并且當前k線價格Price2大于等于前一k線價格Price2的。第二個括號,假如當前k線價格Price1小于前一k線的price1,并且當前k線價格price2小于前一k線Price2的。兩個括號,把成立的賦值給布爾型序列變量Con,即為真。if(CurrentBar<Length)//假如當前k線索引值小于周期Length(初值10){Return0;//返回值為0.//}Else//相當于當前k線索引值大于或等于周期10的,即第11根k線之后的,按下列執行。//{fori=0ToLength-1//循環語句,變量i從0到9依次循環執行.//{if(Con[i])//布爾型序列變量Con[i],依變量i值改變的。//{Matches=Matches+1;//變量Matches自加1.再把值賦值回給變量Matches。//}}Return2*Matches/Length-1;//返回值主函數的值等于2*Matches/Length-1。//}End圖表上顯示的指標代碼如下:ParamsNumericLength(10);VarsNumericCORValue;BeginCORValue=Correlation(Close,Data1.Close,Length);PlotNumeric("CORA",CORValue);PlotNumeric("零線",0);PlotNumeric("1線",1);PlotNumeric("-1線",-1);End指標代碼注解:ParamsNumericLength(10);//聲明數值參數Length,初值為10,其實就是周期了。//VarsNumericCORValue;//聲明數值變量CORValue。//BeginCORValue=Correlation(Close,Data1.Close,Length);//咱在Correlation聲明了三個參數吧,這邊也對應著把三個參數返回去求值,再把值反饋回來,這個Data1.Close意思是第一個插入圖表的商品合約收盤價。//PlotNumeric("CORA",CORValue);//畫線CORA了,值就為CORValue值。//PlotNumeric("零線",0);//畫零線。//PlotNumeric("1線",1);//畫1線,值為1。//PlotNumeric("-1線",-1);//畫-1線,值為-1。//End策略規則如下:1、在均線200上的,而且相關系數是大于0的,開多。2、在均線200下的,而且相關系數是小于0的,開空。3、有多單時候,當相關系數小于等于-0.5的,平倉。4、有空單時候,當相關系數大于等于0.5的,平倉。策略信號代碼:ParamsNumericLength(10);NumericDslowLength(200);VarsNumericSeriesCORValue;NumericSeriesAvgValue3;BeginAvgValue3=AverageFC(Close,DslowLength);PlotNumeric("MA3",AvgValue3);CORValue=Correlation(Close,Data1.Close,Length);If(!CallAuctionFilter())Return;If(MarketPosition<>1AndCrossOver(CORValue[1],0)AndAvgValue3[1]<Close[1]){Buy(1,Open);}If(MarketPosition<>-1AndCrossUnder(CORValue[1],0)AndAvgValue3[1]>Close[1]){SellShort(1,Open);}If(MarketPosition==1AndCrossUnder(CORValue[1],-0.5)){Sell(1,Open);}If(MarketPosition==-1AndCrossOver(CORValue[1],0.5)){BuyToCover(1,Open);}End策略代碼注解://聲明參數Params//定義一個名為Length的數值型參數,其默認值為10NumericLength(10);//定義一個名為DslowLength的數值型參數,其默認值為200NumericDslowLength(200);//聲明變量Vars//定義一個NumericSeries類型的變量CORValue,用于存儲相關性的計算結果NumericSeriesCORValue;//定義一個NumericSeries類型的變量AvgValue3,用于存儲移動平均的計算結果NumericSeriesAvgValue3;//策略開始執行Begin//計算Close價格的前DslowLength個周期的平均值,并將結果存儲在AvgValue3中AvgValue3=AverageFC(Close,DslowLength);//繪制AvgValue3的圖形,標簽為"MA3"PlotNumeric("MA3",AvgValue3);//計算Close價格與Data1.Close價格之間的相關性,長度為Length,并將結果存儲在CORValue中CORValue=Correlation(Close,Data1.Close,Length);//如果CallAuctionFilter()函數返回false(通常表示當前不滿足某些交易條件),則退出策略If(!CallAuctionFilter())Return;//交易邏輯開始//如果當前市場位置不為多頭持倉(即不持有股票),并且CORValue的上一個值從負值穿越到0值以上,//且AvgValue3的上一個值小于Close的上一個值,則執行買入操作If(MarketPosition<>1AndCrossOver(CORValue[1],0)AndAvgValue3[1]<Close[1]){Buy(1,Open);//買入1股,以開盤價成交}//如果當前市場位置不為空頭持倉(即不持有賣空股票),并且CORValue的上一個值從正值穿越到0值以下,//且AvgValue3的上一個值大于Close的上一個值,則執行賣空操作If(MarketPosition<>-1AndCrossUnder(CORValue[1],0)AndAvgValue3[1]>Close[1]){SellShort(1,Open);//賣空1股,以開盤價成交}//如果當前市場位置為多頭持倉,并且CORValue的上一個值從正值穿越到-0.5以下,則執行賣出操作If(MarketPosition==1AndCrossUnder(CORValue[1],-0.5)){Sell(1,Open);//賣出1股,以開盤價成交}//如果當前市場位置為空頭持倉,并且CORValue的上一個值從負值穿越到0.5以上,則執行平倉操作If(MarketPosition==-1AndCrossOver(CORValue[1],0.5)){BuyToCover(1,

溫馨提示

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

評論

0/150

提交評論