單均線加通道突破系統[TB交易模型][開拓者公式]
交易規則:
以簡單移動平均線判斷趨勢,收盤價在均線之上為多頭趨勢,在均線之下為空頭趨勢;
為過濾均線假突破,在均線基礎上加減一定百分比形成圍繞均線的上下兩條通道;
價格盤中突破上軌,進場做多或平空反多;
價格盤中突破下軌,進場做空或平多反空;
增加跟蹤止盈的功能(峰值價回落ATR倍數);
跟蹤止盈后突破出場前高(低)點再進場;
交易頭寸暫為1手。
策略設計(1)
進出場技術指標的編寫:
ATRValue = AvgTrueRange(ATRLength);
Commentary("ATRValue="+text(ATRValue));
MA = AverageFC(Close,Length);
UpperBand = MA[1] * (1 + FilterPercent / 10000 );
LowerBand = MA[1] * (1 - FilterPercent / 10000 );
PlotNumeric("MA",MA);
PlotNumeric("UpperBand",UpperBand);
PlotNumeric("LowerBand",LowerBand);
其中參數:ATRLength --- 平均真實波幅的計算周期
FilterPercent --- 通道的比例(萬分之幾)
策略設計(2)
為了讓系統的組合更靈活,把一個完整的交易模型分成做多和做空兩個模型分別編寫;
初次進場和再次進場,多空模型分別通過序列變量bLongStoped和bShortStoped來判斷;
進場后,兩個變量設為false,重新記錄跟蹤止損狀況
跟蹤止盈觸發后,設置為true
趨勢反轉后,有倉位需要止損,但不設置標志
跟蹤止損和再次進場創新高(低)的判斷,都需要記錄盈利峰值價( 也就是前高或前低),因此需要設置兩個序列變量HigherAfterEntry和LowerAfterEntry,進場后及時記錄價格的新高(低)的變化;
策略設計(3)
跟蹤止盈采用的是盈利峰值價回落ATR的一定比例后觸發止損,加上本身趨勢反轉時的止損,兩部分代碼合在一起,以多頭模型為例說明:
止損價的設置
StopLine = LowerBand;
if (StopLine < HigherAfterEntry - ATRValue[1] * TrailStopNumATR)
StopLine = HigherAfterEntry - ATRValue[1] * TrailStopNumATR;
止損的觸發
If(Low <= StopLine)
{
MyPrice = StopLine;
If(Open < MyPrice) MyPrice = Open;
Sell(0,MyPrice);
bLongStoped = true;
}
策略設計(4)
集合競價數據過濾
集合競價時,會產生一個Tick,這個Tick會驅動圖表中加載的公式應用的運算,如果這時符合交易條件,則會發送委托單。但交易所此時并未開市,從而產生廢單。
為處理這種情況,我們需要在代碼中過濾這些數據,我們在公式中加入以下代碼:
分鐘周期和Tick周期下
If (( BarType == 1 or BarType == 2 ) && BarStatus == 2 && date != date[1] && high == low) return;
日線周期
If ( BarType == 0 && BarStatus == 2 && CurrentTime <= 0.09 && high == low) return;
如果以上指標公式不適用于您常用的行情軟件
或者您想改編成選股公式,以便快速選出某種形態個股的話,
- 上一篇:用TB實現DMI指標
- 下一篇:四周法則突破系統 TB交易模型
相關文章
-
沒有相關內容