各位大俠,救命啊,編譯通過但是沒有信號,求救! - TradeBlazer公式 [開拓者 TB]
- 咨詢內(nèi)容:
自己攢了一個(gè)系統(tǒng)出來,雖然編譯通過,但是插入公式應(yīng)用時(shí)卻沒有信號顯示,請管理員或者版主,或者各位大俠救命,感激不盡!
一分鐘鐘上應(yīng)用,思路如下:
開倉條件:1、當(dāng)日開盤,如果開盤低于昨日收盤則開多單,反之開空;
2、高低點(diǎn)反轉(zhuǎn)理論,確定當(dāng)日一分鐘行情下已經(jīng)走出的高低點(diǎn),然后加減一定的點(diǎn)位,即為已有倉位的出場以及反向單的進(jìn)場點(diǎn)位
平倉條件:1、已經(jīng)走出的高低點(diǎn),加減止損間距
2、尾盤全部平倉
加倉條件:確定一定的加倉間距和加倉次數(shù),在加倉次數(shù)范圍之內(nèi),然后走出超過此間距就加倉
TB代碼如下:
Params
Bool blnitStatus(false); //初始化標(biāo)志,修改初始倉位時(shí)需改變?yōu)門rue
Numeric InitMyRealMp(0); //初始當(dāng)前倉位,正數(shù)表示多單,負(fù)數(shù)表示空單
Numeric AddGrid(5); //加倉間距,最小跳動(dòng)
Numeric TotalGrids(10); //最大交易次數(shù)
Numeric TrailingGrid(30); //移動(dòng)止損間距,最小跳動(dòng)
Numeric EveryLots(1); //每次開倉手?jǐn)?shù)
Numeric OffSet(1); //委托買賣偏差,默認(rèn)買賣價(jià)偏差一個(gè)滑點(diǎn)
Numeric ExitOnCloseMins(14.58); //收盤平倉時(shí)間
Vars
Numeric HighAfterLongEntry;
Numeric LowAfterShortEntry;
Numeric MyRealMp(0);
Numeric MinPoint;
Numeric TmpPrice;
Numeric TmpLots;
Begin
MinPoint=MinMove*PriceScale;
MyRealMp=GetGlobalVar(0);
HighAfterLongEntry=GetGlobalVar(1);
LowAfterShortEntry=GetGlobalVar(2);
If(BarStatus==0 and (MyRealMp==InvalidNumeric or blnitStatus))
{
MyRealMp=InitMyRealMp;
}
If(Date<>Date[1])
{
HighAfterLongEntry=High;
LowAfterShortEntry=Low;
MyRealMp=0;
}Else
{
HighAfterLongEntry=max(HighAfterLongEntry,High);
LowAfterShortEntry=Min(LowAfterShortEntry,Low);
}
If(Time<ExitOnCloseMins/100)
{
If(MyRealMp>0 And HighAfterLongEntry-low>=TrailingGrid*MinPoint And (High-low<TrailingGrid*MinPoint Or(High-Low>=TrailingGrid*MinPoint And Close<Open)))
{
TmpPrice=HighAfterLongEntry-TrailingGrid;
TmpLots=Abs(MyRealMp*EveryLots);
Sell(TmpLots,TmpPrice);
MyRealMp=0;
LowAfterShortEntry=Low;
}Else
If(MyRealMp<0 And High-LowAfterShortEntry>=TrailingGrid*MinPoint And (High-low<TrailingGrid*MinPoint Or(High-Low>=TrailingGrid*MinPoint And Close<Open)))
{
TmpPrice=LowAfterShortEntry+TrailingGrid;
TmpLots=Abs(MyRealMp*EveryLots);
BuyToCover(TmpLots,TmpPrice);
MyRealMp=0;
HighAfterLongEntry=0;
}
if(Time==0.9000 and open!=Close[1])
{ If(MyRealMp==0 And open<Close[1])//開盤低開多單開倉
{
TmpPrice=(Open+offset)*MinPoint;
TmpLots=EveryLots;
Buy(TmpLots,TmpPrice);
MyRealMp=1;
HighAfterLongEntry=High;
}Else
If(MyRealMp==0 And open>Close[1] )//開盤高開空單開倉
{
TmpPrice=(Open-offset)*MinPoint;
TmpLots=EveryLots;
SellShort(TmpLots,TmpPrice);
MyRealMp=-1;
LowAfterShortEntry=low;
}
} Else
If(Time>0.9000 and Time<=0.1455)
{If(MyRealMp==0 And High-LowAfterShortEntry>=TrailingGrid*MinPoint)//當(dāng)日開盤開倉外第一筆多單開倉
{
TmpPrice=LowAfterShortEntry+(TrailingGrid+offset)*MinPoint;
TmpLots=EveryLots;
Buy(TmpLots,TmpPrice);
MyRealMp=1;
HighAfterLongEntry=High;
}Else
If(MyRealMp==0 And HighAfterLongEntry-low>=TrailingGrid*MinPoint)//當(dāng)日開盤開倉外的第一筆空單開倉
{
TmpPrice=HighAfterLongEntry-(TrailingGrid+offset)*MinPoint;
TmpLots=EveryLots;
SellShort(TmpLots,TmpPrice);
MyRealMp=-1;
LowAfterShortEntry=low;
}
}
If(MyRealMp>0 and MyRealMp<TotalGrids And high-LowAfterShortEntry>=(TrailingGrid+MyRealMp*AddGrid)*MinPoint)//多單加倉
{
TmpPrice=LowAfterShortEntry+(TrailingGrid+MyRealMp*AddGrid+offset)*MinPoint;
TmpLots=EveryLots;
Buy(TmpLots,TmpPrice);
MyRealMp=MyRealMp+1;
}Else
If(MyRealMp<0 And -1*MyRealMp<TotalGrids And HighAfterLongEntry-Low>=(TrailingGrid+Abs(MyRealMp*AddGrid))*MinPoint)//空單加倉
{
TmpPrice=HighAfterLongEntry-(TrailingGrid+Abs(MyRealMp*AddGrid)+offset)*MinPoint;
TmpLots=EveryLots;
SellShort(TmpLots,TmpPrice);
MyRealMp=MyRealMp-1;
}
}Else If(Time>=ExitOnCloseMins/100)
{
Sell(0,Close);
BuyToCover(0,Close);
}
SetGlobalVar(0,MyRealMp);
SetGlobalVar(1,HighAfterLongEntry);
SetGlobalVar(2,LowAfterShortEntry);
Commentary("MyRealMp="+Text(MyRealMp));
Commentary("HighAfterLongEntry="+Text(HighAfterLongEntry));
Commentary("LowAfterShortEntry="+Text(LowAfterShortEntry));
End - TB技術(shù)人員:
回復(fù) 1# gsjjs01
條件內(nèi)
MyRealMp=GetGlobalVar(0);
一開始GetGlobalVar(0)為0.
MyRealMp>0;這個(gè)條件不滿足 - TB客服:
管理員,你好,先對你的回復(fù)表示感謝!
有個(gè)問題不明白,if條件語句里面,if條件判斷不是說判斷條件為真時(shí),則執(zhí)行嗎?那不為真時(shí)則是不執(zhí)行的吧。那么這個(gè)語句里面MyRealMp>0,只是用來判斷的條件啊!不滿足的時(shí)候不執(zhí)行不就是了嗎,為什么一定要滿足呢?? - 網(wǎng)友回復(fù):
是我自己后邊的問題太低級了嗎??
- 網(wǎng)友回復(fù):
回復(fù) 4# gsjjs01
if(Time==0.9000 and open!=Close[1])
改成
if(Time==0.0900 and open!=Close[1])
就有信號了
有思路,想編寫各種指標(biāo)公式,程序化交易模型,選股公式,預(yù)警公式的朋友
可聯(lián)系技術(shù)人員 QQ: 262069696 進(jìn)行 有償 編寫!(不貴!點(diǎn)擊查看價(jià)格!)
- 上一篇:能否給幾個(gè)全局變量控制開倉的例子 - Tra…
- 下一篇:沒有了!
相關(guān)文章
-
指定的模型還沒有相關(guān)內(nèi)容!