作者:開(kāi)拓者 TB 來(lái)源:cxh99.com 發(fā)布時(shí)間:2012年10月24日
- 咨詢內(nèi)容: 我使用
if(open > con1 and MarketPosition ==0)
{
buy(n,open);
}
這樣的模式來(lái)開(kāi)倉(cāng),開(kāi)倉(cāng)成功后,還是會(huì)一直進(jìn)到函數(shù)體中,也就是MarketPosition ==0還一直成立,怎么回事啊?MarketPosition 的值必須走完當(dāng)前bar才更新嗎?我買(mǎi)入成功后,信號(hào)也出現(xiàn)了,信號(hào)也沒(méi)有消失,為什么MarketPosition 的值未更新?【id:穿堂風(fēng)】
回復(fù):MarketPosition 好像是下一個(gè)BAR才會(huì)更新值,簡(jiǎn)單說(shuō),marketposition實(shí)盤(pán)不能用,只能用來(lái)測(cè)試【ID:文靜的獅子 】
- TB技術(shù)人員: Marketposition是下一根Bar才改變
- TB客服: 試寫(xiě)如下代碼
- Begin
- If(close[1] >open[1])
- {
- FileAppend("d:\\marketpostion.log"," currentbar: "+text(currentbar)+ "|| 執(zhí)行buy命令前的marketposition值: " +Text(marketposition));
- Buy(1,open);
- FileAppend("d:\\marketpostion.log"," currentbar: "+text(currentbar)+ "|| 執(zhí)行buy命令后的marketposition值: " +Text(marketposition));
- }
- end
復(fù)制代碼得出信號(hào)如下圖:
123.png (4.52 KB, 下載次數(shù): 3) 2012-7-30 22:49:10 上傳下載次數(shù): 3
公式所寫(xiě)日志記錄如下:
444.png (57.28 KB, 下載次數(shù): 2) 2012-7-30 22:54:44 上傳下載次數(shù): 2
綜上可得知:在本K線上,marketposition的初始值為0,在執(zhí)行buy語(yǔ)句前為0,buy之后就會(huì)變?yōu)?。當(dāng)前信號(hào)所在K線,每執(zhí)行一次,marketposition都是從初始值0開(kāi)始運(yùn)行,buy之后變成1 。
周而復(fù)始,直到本K線的最后一個(gè)tick走完之后,將1的做為下一個(gè)K線的markeposition的初始參與計(jì)算 。
- 網(wǎng)友回復(fù): Mark 這個(gè)需要學(xué)習(xí)
- 網(wǎng)友回復(fù): 本帖最后由 shenpei715 于 2012-8-7 10:26 編輯
小米 發(fā)表于 2012-7-30 22:58
試寫(xiě)如下代碼得出信號(hào)如下圖:
非常感謝,林老師!
不只提供了一個(gè)問(wèn)題的答案,重要的是給出了一種排查出錯(cuò)的思路方法。
|