關(guān)于交易中超級(jí)圖表買賣數(shù)只顯示一下消失問題 [開拓者 TB]
- 咨詢內(nèi)容:
我編了一個(gè)程序,內(nèi)容如下,但以模擬帳號(hào)運(yùn)行時(shí),發(fā)現(xiàn)了個(gè)問題,就是在超級(jí)圖表買賣數(shù)只顯示一下,就會(huì)消失了,但實(shí)現(xiàn)模擬帳戶是可以實(shí)現(xiàn)當(dāng)筆交易的。但當(dāng)下個(gè)信號(hào)出現(xiàn)時(shí),卻不再運(yùn)行,請(qǐng)教大家,如何解決這個(gè)問題?
Params
Numeric FastLength(12);
Numeric SlowLength(26);
Numeric MACDLength(9);
Vars
NumericSeries MACDValue;
Numeric AvgMACD;
Numeric MACDDiff;
BoolSeries condBuy(false);
BoolSeries condSell(false);
String time_sr;//交易bar時(shí)間
String time_now;//當(dāng)前bar時(shí)間
Numeric N1(1);//買賣數(shù)量
Numeric minpoint;//最少變化價(jià)格
Begin
MACDValue = XAverage( Close, FastLength ) - XAverage( Close, SlowLength ) ;
AvgMACD = XAverage(MACDValue,MACDLength);
MACDDiff = MACDValue - AvgMACD;
condBuy=CrossOver(MACDValue,AvgMACD);
condSell=CrossUnder(MACDValue,AvgMACD);
minpoint=MinMove*PriceScale;
//1、加入交易時(shí)間控制,被免同一根bar反復(fù)執(zhí)行
time_now=DateTimeToString(date+time);
time_sr=GetTBProfileString("data","bartime");//賦值到time_sr
if(Marketposition<>1 and (condBuy[1]==true and time_sr<>time_now))//判斷是否持多倉,條件穿越是否成功
{
SetTBProfileString("data","bartime",DateTimeToString(date+time));//將當(dāng)前交易的bar時(shí)間記錄
Buy(N1,Open+minpoint);
}
if(MarketPosition<>-1 and (condSell[1]==true and time_sr<>time_now))//判斷是否持空倉,條件穿越是否成功
{
SetTBProfileString("data","bartime",DateTimeToString(date+time));//將當(dāng)前交易的bar時(shí)間記錄
SellShort(N1,Open-minpoint);
}
End - TB技術(shù)人員:
你所使用的讀寫數(shù)據(jù)文件來判斷,此寫法會(huì)導(dǎo)致信號(hào)消失。
TB本身就有控制,不會(huì)反復(fù)發(fā)單。你只要使用穩(wěn)定的條件做發(fā)單信號(hào)就行了。
去掉現(xiàn)在的這個(gè)控制,這個(gè)是不必要的。
- TB客服: 好的,謝謝!管理員,如果我要實(shí)現(xiàn)這個(gè)判斷,不用讀寫數(shù)據(jù)文件來實(shí)現(xiàn),有沒有更好的辦法,又不讓這個(gè)信號(hào)消失?請(qǐng)賜教,謝謝!
有思路,想編寫各種指標(biāo)公式,程序化交易模型,選股公式,預(yù)警公式的朋友
可聯(lián)系技術(shù)人員 QQ: 262069696 進(jìn)行 有償 編寫!(不貴!點(diǎn)擊查看價(jià)格!)
相關(guān)文章
-
沒有相關(guān)內(nèi)容