求助一個(gè)關(guān)于海龜策略問(wèn)題,請(qǐng)大神幫忙
作者:開(kāi)拓者 TB 來(lái)源:cxh99.com 發(fā)布時(shí)間:2018年02月12日
-
咨詢(xún)內(nèi)容:
想表達(dá)最高價(jià)>=50日高點(diǎn)就開(kāi)多
最低價(jià)<=50日最低點(diǎn)就開(kāi)空
平多:最低價(jià)<=20日最低點(diǎn)
平空:最高價(jià)>=20日最高點(diǎn)
這是我從MC語(yǔ)言翻譯過(guò)來(lái)的,回測(cè)記錄不對(duì),誰(shuí)能幫我看看是哪寫(xiě)錯(cuò)了,拜托
Params
? ? ? ? Numeric Lots(1);
Vars
? ? NumericSeries MA1;
? ? ? ? NumericSeries MA2;
? ? ? ? NumericSeries MA3;
? ? ? ? NumericSeries MA4;
Begin
? ? //集合競(jìng)價(jià)和小節(jié)休息過(guò)濾
? ? If (!CallAuctionFilter())Return;
? ? ? ? MA1=Highest(High,50);
? ? ? ? MA2=Lowest(Low,50);
? ? ? ? MA3=Highest(High,20);
? ? ? ? MA4=Lowest(Low,20);
? ? ? ? PlotNumeric("MA1",MA1);
? ? ? ? PlotNumeric("MA2",MA2);
? ? ? ? PlotNumeric("MA3",MA3);
? ? ? ? PlotNumeric("MA4",MA4);
? ? ? ? //進(jìn)場(chǎng)條件
? ? ? ? if (MarketPosition!=1 And High[1]>=MA1[2])//多
? ? ? ? {
? ? ? ? Buy(Lots,Max(open,MA1[1]));
? ? ? ? }
? ? ? ? if (MarketPosition!=-1 And Low[1]<=MA2[2])//空
? ? ? ? {
? ? ? ? SellShort(Lots,Min(open,MA2[1]));
? ? }
? ? ? ? //出場(chǎng)條件
? ? ? ? if (marketposition==1 And Low[1]<=MA4[2])//平多
? ? ? ? {
? ? ? ? BuyToCover(0,Min(open,MA4[1]));
? ? }
? ? ? ? if (marketposition==-1 And High[1]>=MA3[2])//平空
? ? ? ? {
? ? ? ? Sell(0,Max(open,MA3[1]));
? ? ? ? }
End
?
?來(lái)源:CXH99.COM
-
TB技術(shù)人員:
不清楚你所講的不對(duì),是指哪個(gè)地方不對(duì)。
只是看到你的回溯數(shù)據(jù)看是否可以修改:
high/low是拿最新k線(xiàn)的high,還是上一根k線(xiàn)的high?
均線(xiàn),是從前一個(gè)周期的bar開(kāi)始算,還是從前兩根bar開(kāi)始算?
?
-
TB客服:
spring_abc 發(fā)表于 2017-8-30 08:22
不清楚你所講的不對(duì),是指哪個(gè)地方不對(duì)。
只是看到你的回溯數(shù)據(jù)看是否可以修改:
high/low是拿最新k線(xiàn)的hig ...
拿開(kāi)多舉例:如果最高價(jià)>=50日最高點(diǎn),第二天就開(kāi)多,那么所提到的最高價(jià)就是前一天的最高價(jià)吧,而最高價(jià)又不能和當(dāng)天的MA1比較,應(yīng)該和前五十跟Bar的最高點(diǎn)比較較,所以是 High[1]>=MA1[2],再open,對(duì)嗎?我是這樣理解,這樣寫(xiě)的。
if (MarketPosition!=1 And High[1]>=MA1[2])//多
? ?? ???{
? ?? ???Buy(Lots,Max(open,MA1[1]));
? ?? ???}
?
-
網(wǎng)友回復(fù):
marialeng 發(fā)表于 2017-8-30 10:14
拿開(kāi)多舉例:如果最高價(jià)>=50日最高點(diǎn),第二天就開(kāi)多,那么所提到的最高價(jià)就是前一天的最高價(jià)吧,而最高價(jià) ...
1. 最高價(jià)>=50日最高點(diǎn),是否可這樣去解?
? ?? ???上一周期的高點(diǎn)high,就是近50個(gè)周期的最高點(diǎn)--->可以做成high[1] == MA1[1]
2. 對(duì)于多頭,當(dāng)出現(xiàn)最高價(jià)時(shí),去下多單會(huì)有多大的風(fēng)險(xiǎn),這個(gè)要看情況。空頭反之亦然.
? ? 如果是突破行情或行情中繼,應(yīng)該可以。在底部有點(diǎn)像就是蛟龍出海(收盤(pán)價(jià)突然拉高并配合量,一下子高出前面幾根均線(xiàn))
? ? 但如果到行情結(jié)束,則應(yīng)該需要注意。
? ?總的來(lái)講,大部分情況下,高于近期最高點(diǎn)后,后面可能會(huì)回抽。
?
-
網(wǎng)友回復(fù):
spring_abc 發(fā)表于 2017-8-30 12:34
1. 最高價(jià)>=50日最高點(diǎn),是否可這樣去解?
? ?? ???上一周期的高點(diǎn)high,就是近50個(gè)周期的最高點(diǎn)---> ...
就算改成這樣:high[1] == MA1[1],結(jié)果還是一樣。
其實(shí)不想問(wèn)策略本身的問(wèn)題,因?yàn)槲沂秦?fù)責(zé)翻譯的,只想問(wèn)我代碼哪里寫(xiě)的不對(duì)。 |