開拓者程序化交易TB公式高級應(yīng)用_第1頁
開拓者程序化交易TB公式高級應(yīng)用_第2頁
開拓者程序化交易TB公式高級應(yīng)用_第3頁
開拓者程序化交易TB公式高級應(yīng)用_第4頁
開拓者程序化交易TB公式高級應(yīng)用_第5頁
已閱讀5頁,還剩53頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、TB公式高級應(yīng)用公式高級應(yīng)用黃柳黃柳深圳市拓瑞邦澤科技有限公司第一部分第一部分持倉交易系統(tǒng)的分析和實現(xiàn)持倉交易系統(tǒng)的設(shè)計要素持倉交易系統(tǒng)的設(shè)計要素u設(shè)計思路:趨勢跟蹤;u設(shè)計原則:不能錯過主要趨勢;u設(shè)計細(xì)節(jié):減少盤整時的連續(xù)虧損和最大資金回撤。u總結(jié):uCut loss short, let profit runu截短虧損,讓利潤奔跑截短虧損,讓利潤奔跑!常見的持倉交易系統(tǒng)常見的持倉交易系統(tǒng)u高低點突破系統(tǒng)(四周法則)u雙均線系統(tǒng)(DualMA)u波動性突破系統(tǒng)(ATR)u布林通道突破系統(tǒng)(BOLL)u拋物線轉(zhuǎn)向系統(tǒng)(SAR)u顧比倒數(shù)線系統(tǒng)(CBL)Keltner Channel Syst

2、emu基于Keltner Channel(肯特納通道)的持倉交易系統(tǒng)。u由價格均線和ATR形成通道,當(dāng)價格突破通道產(chǎn)生入場訊號。Keltner Channel原理原理u肯特納通道肯特納通道(KC)是一個移動平均通道,由三條線組合而成(上軌、中線及下軌),若價格突破邊界,即表示出現(xiàn)開倉機會。u肯特納通道是基于平均真實波幅原理而形成的指標(biāo),對價格波動反應(yīng)靈敏,基于KC的系統(tǒng)可以實時開倉,不需要等待下一個Bar。Keltner Channel算法算法u中線 = Typical Price 的 N 周期平均值;uTypical Price =(High+Low+Close)/3;u上軌 = 中線 +

3、通道;u通道 = NumATRs * 平均真實波幅。Keltner Channel指標(biāo)指標(biāo)vParamsvNumeric Length(20);vNumeric NumATRs(1);vVarsvNumericSeries TPrice;vNumeric AvgValue;vNumeric ShiftValue;vNumeric UpperBand;vNumeric LowerBand;vBeginvTPrice = (High+Low+Close)/3;vAvgValue = AverageFC(TPrice,Length);vShiftValue = NumATRs*AvgTrueRang

4、e(Length);vUpperBand = AvgValue + ShiftValue;vLowerBand = AvgValue - ShiftValue;vPlotNumeric(UpperBand,UpperBand);vPlotNumeric(LowerBand,LowerBand);vPlotNumeric(MidLine,AvgValue);vEndKCS 版本版本1(1)vParamsvNumeric Length(20);vNumeric NumATRs(1);vVarsvNumericSeries TPrice;vNumeric AvgValue;vNumericSerie

5、s ShiftValue;vNumeric UpperBand;vNumeric LowerBand;vNumeric MyPrice;vBeginvTPrice = (High1+Low1+Close1)/3;vAvgValue = AverageFC(TPrice,Length);vShiftValue = NumATRs*AvgTrueRange(Length);vUpperBand = AvgValue + ShiftValue1;vLowerBand = AvgValue - ShiftValue1;KCS版本版本1(2)v If(MarketPosition!=1 & Hi

6、gh = UpperBand)vvMyPrice = UpperBand;vIf(Open MyPrice) MyPrice = Open;vBuy(1,MyPrice);Return;vvIf(MarketPosition!=-1 & Low = LowerBand)vvMyPrice = LowerBand;vIf(Open 1)vvHigherAfterEntry = Max(HigherAfterEntry1,High1);vLowerAfterEntry = Min(LowerAfterEntry1,Low1);vvCommentary(HigherAfterEntry=+T

7、ext(HigherAfterEntry);vCommentary(LowerAfterEntry=+Text(LowerAfterEntry);KCS_V3(5)vIf(MarketPosition=1)vvIf(Low = HigherAfterEntry - TrailingStop*MinPoint)vvMyPrice = HigherAfterEntry - TrailingStop*MinPoint;vIf(Open = LowerAfterEntry + TrailingStop*MinPoint)vvMyPrice = LowerAfterEntry + TrailingSto

8、p*MinPoint;vIf(Open MyPrice) MyPrice = Open;vBuyToCover(1,MyPrice);vvKCS_V3(6)u我們將編譯后的系統(tǒng)重新運行,會看到凈利潤上升了13295,最大資金回撤下降了14575,改進(jìn)的效果是非常明顯的。u我們再回顧2006年7月的圖表,KCSV3的訊號如下圖:u如圖中紅圈位置,在跟蹤止損之后,價位還在KC上軌之上,系統(tǒng)再次入場。u我們應(yīng)該思考一種新的入場規(guī)則,在跟蹤止損或止損后再次入場。KCS_V3(7)KCS_V4(1)u重新入場規(guī)則:做多時突破前期高點再次入場;做空時突破前期低點再次入場。u為了實現(xiàn)重新入場,我們需要記錄跟

9、蹤止損的狀態(tài)。u還需要記錄最近的最高、最低點。KCS_V4(2)v新增序列變量:vBoolSeries bLongTrailingStoped;vBoolSeries bShortTrailingStoped;u初始化:vIf(BarStatus 0)vvbLongTrailingStoped = bLongTrailingStoped1;vbShortTrailingStoped = bShortTrailingStoped1;vvCommentary(bLongTrailingStoped=+IIFString(bLongTrailingStoped,True,False);vCommen

10、tary(bShortTrailingStoped=+IIFString(bShortTrailingStoped,True,False);KCS_V4(3)u增加一個條件分支,記錄HigherAfterEntry和LowerAfterEntry的值。u再次入場的代碼:vIf(bLongTrailingStoped & MarketPosition=0 & High HigherAfterEntry)vvMyPrice = HigherAfterEntry + MinPoint;vIf(Open MyPrice) MyPrice = Open;vBuy(1,MyPrice);v

11、bLongTrailingStoped = False;vReturn;vvIf(bShortTrailingStoped & MarketPosition=0 & Low LowerAfterEntry)vvMyPrice = LowerAfterEntry - MinPoint;vIf(Open =UpperBand) vMyPrice = UpperBand;vIf(Open MyPrice) MyPrice = Open;vBuy(1,MyPrice);vReturn;vRBS_V1(2)vIf(MarketPosition!=-1 & Low=LowerBan

12、d)vvMyPrice = LowerBand;vIf(Open =ExitOnCloseMins/100)vvSell(1,Open);vBuyToCover(1,Open);vvSetExitOnClose;vEndRBS_V1(3)u我們將最初級版本的系統(tǒng)應(yīng)用于所有品種的指數(shù)中(可行性測試,選取了指數(shù)的30分鐘周期,數(shù)據(jù)范圍為2008.1.1-現(xiàn)在)。除了玉米,小麥等少數(shù)價低品種外,絕大部分都是盈利,有些品種還有不錯的資金曲線。u證明該系統(tǒng)的有不錯的胚子,值得繼續(xù)深入研究。RBS_V2(1)v如果前一日漲?;虻#瑒t會出現(xiàn)范圍很小。v兩種解決方案:v1、設(shè)定一個范圍的最小值,假定為當(dāng)前價

13、格的0.2%。v2、考慮上當(dāng)前的開盤價,加上跳空的范圍。我們選擇第一種方法。RBS_V2(2)vParamsv Numeric MinRange(0.2);vVarsv NumericSeries DayOpen;v Numeric preDayHigh;v Numeric preDayLow; v NumericSeries preDayRange;vBeginv preDayHigh = HighD(1);v preDayLow = LowD(1);v If(Date!=Date1)v v DayOpen = Open;v preDayRange = preDayHigh - preDay

14、Low;v If(preDayRange Open*MinRange*0.01) v preDayRange = Open*MinRange*0.01;v Elsev v DayOpen = DayOpen1;v preDayRange = preDayRange1;v RBS_V3(1)v有可能通道會比較寬,難道非要等到反轉(zhuǎn)才平倉?v考慮增加止損設(shè)置,也有2種方案:v1、虧損固定點數(shù)。v2、虧損當(dāng)前價格的百分比。v考慮到商品價格變化的差異,我們采取第二種方式。RBS_V3(2)v 先增加一個變量StopLine,用來保存止損位置。v下面是做多時的止損代碼:vIf(MarketPosition

15、=1)vvStopLine = UpperBand-DayOpen*StopLossSet*0.01;vIf(Low = StopLine)vvMyPrice = StopLine;vIf(Open = StopLine)vvMyPrice = StopLine;vIf(Open MyPrice) MyPrice = Open;vBuyToCover(Lots,MyPrice);vvRBS_V4(1)v突破的時效性,發(fā)生在上午和下午意義是不同的。v不同的商品時效屬性不盡相同v為此我們增加最后交易時間參數(shù),可供優(yōu)化測試來確定最佳值。RBS_V4(2)v增加參數(shù):vNumeric LastTrad

16、eMins(14.00);v開倉條件處增加一個時間條件。vIf(MarketPosition!=1 & High=UpperBand & Time LastTradeMins/100)vv/ 多頭開倉vvIf(MarketPosition!=-1 & Low=LowerBand & Time 1)vvHigherAfterEntry = max(HigherAfterEntry1,High1);vLowerAfterEntry = min(LowerAfterEntry1,Low1);vRBS_V5(4)v跟蹤止損的編碼可配合前面的止損編碼一起控制。vIf(Hi

17、gherAfterEntry=AvgEntryPrice+DayOpen*TrailingStart*0.01)vvStopLine = HigherAfterEntry - DayOpen*TrailingStop*0.01;vElse / 止損vvStopLine = UpperBand-DayOpen*StopLossSet*0.01;vvvIf(Low = StopLine)vvMyPrice = StopLine;vIf(Open HigherAfterEntry)vvMyPrice = HigherAfterEntry + MinPoint;vIf(Open MyPrice) My

18、Price = Open;vBuy(1,MyPrice);vbLongStoped = False;vReturn;vvRBS_V6(4)v/ 做空再次入場代碼:vIf(bShortStoped & MarketPosition=0 & Low LowerAfterEntry)vvMyPrice = LowerAfterEntry - MinPoint;vIf(Open MyPrice) MyPrice = Open;vSellShort(1,MyPrice);vbShortStoped = False;vReturn;vRBS_V7(1)v增加漲跌停板控制,接近漲跌停板不會開倉。v價格到達(dá)漲跌停板馬上平倉。RBS_V7(2)v我們新建一個布爾變量bInBoardRange,默認(rèn)值設(shè)置為False。vInBoardRange = v(Open Q_UpperLimit - DayOpen*S

溫馨提示

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

評論

0/150

提交評論