請(qǐng)教這樣編寫(xiě)有什么問(wèn)題 [開(kāi)拓者 TB]
- 咨詢內(nèi)容: 以下這樣編寫(xiě)在模擬中與預(yù)想的不一樣。原來(lái)想要持倉(cāng)一直保持只有1手,已經(jīng)有持倉(cāng)就不能連續(xù)開(kāi)倉(cāng),但交易結(jié)果是不停開(kāi)倉(cāng)。請(qǐng)問(wèn)哪里出錯(cuò)了,應(yīng)該怎樣更改。另外,請(qǐng)教怎樣把K線時(shí)間周期設(shè)置為每根8.5分鐘。謝謝
Params
Numeric length(10);
Numeric lots(1);
Vars
NumericSeries MA1;
Begin
MA1=XAverage(Close,length);
If(Close>MA1&&MarketPosition<>1)
{
Buy(lots,Close);
}
If(Close<MA1&&MarketPosition<>-1)
{
SellShort(lots,Close);
}
PlotNumeric("MA1",MA1);
End - TB技術(shù)人員: 另外,我的原意是在收盤(pán)價(jià)判斷突破之后才發(fā)出交易委托,但是實(shí)際是盤(pán)中突破了就開(kāi)倉(cāng)了。請(qǐng)老師指點(diǎn)一下錯(cuò)在哪里。謝謝
- TB客服: 以你的公式來(lái)看,應(yīng)該是不可以加倉(cāng)的。
不停開(kāi)倉(cāng)的表現(xiàn)是什么樣的?方便的話截個(gè)圖看一下信號(hào)。
條件里使用了close來(lái)做判斷,實(shí)時(shí)中價(jià)格條件滿足了就會(huì)委托 ,不會(huì)待到收盤(pán)之后的。
使用close這樣的條件判斷。有信號(hào)消失的可能性,請(qǐng)注意。。。
你前面所說(shuō)的不停開(kāi)倉(cāng)的表現(xiàn),如果信號(hào)只一個(gè),而帳戶卻多次開(kāi)倉(cāng),則應(yīng)該是與此信號(hào)消失有關(guān)了。 - 網(wǎng)友回復(fù): 實(shí)時(shí)行情中,在一根K線走完之前,其Close,High,Low都可能隨之改變,所以在條件判斷中使用Close可能這一Tick突破了,下一Tick又回到突破價(jià)以下
所以信號(hào)消失
而Marketposition是以圖上的表示為準(zhǔn),而不是以你賬戶里實(shí)際的倉(cāng)位為準(zhǔn),所以當(dāng)價(jià)格再次突破時(shí)就會(huì)出現(xiàn)同一Bar上反復(fù)開(kāi)倉(cāng)的結(jié)果
所以要么你用Close[1]進(jìn)行判斷
或者你干脆用A函數(shù)和Q函數(shù)。。。。
但 - 網(wǎng)友回復(fù): 我是新手,請(qǐng)教什么是A函數(shù)和Q函數(shù),在哪里可以學(xué)習(xí)到。謝謝
有思路,想編寫(xiě)各種指標(biāo)公式,程序化交易模型,選股公式,預(yù)警公式的朋友
可聯(lián)系技術(shù)人員 QQ: 262069696 進(jìn)行 有償 編寫(xiě)!(不貴!點(diǎn)擊查看價(jià)格!)
相關(guān)文章
-
沒(méi)有相關(guān)內(nèi)容