請(qǐng)問(wèn)這個(gè)文華的代碼barslast怎么改寫(xiě) MC 呢 [MC]
-
MC用戶(hù)求助:
文華的代碼
A:=HIGH>REF(HIGH);// 最高價(jià)大于前K線高點(diǎn);
B:=REF(HIGH,2+BARSLAST(A)) ;滿(mǎn)足條件A的前面3根K線的高點(diǎn);
c:=REFX(B,1);//取B在一個(gè)周期后的值
這個(gè)轉(zhuǎn)換為MC 怎么寫(xiě)呢?
(來(lái)自舊論壇客戶(hù),go-yunhang)
?
-
MC回復(fù)討論一:
抱歉回復(fù)的有點(diǎn)晚!
文華支持未來(lái)數(shù)據(jù),但是MC不支持未來(lái)數(shù)據(jù),MC只能從當(dāng)根bar的位置取歷史bar的數(shù)據(jù)(即向歷史回溯);下面先分開(kāi)來(lái)介紹各個(gè)部分,然后再匯總給予整體回復(fù)。
//A:=HIGH>REF(HIGH);
condition1=high>high[1];
{您可以看一下關(guān)鍵字ago,了解一下MC如何在當(dāng)根bar回溯歷史數(shù)據(jù)的,例如,回溯前一根bar的最高價(jià),使用high[1],即在后面加括號(hào),括號(hào)里面使用1,其它數(shù)字的意思以此類(lèi)推}
//B:=REF(HIGH,2+BARSLAST(A)) ;
value1=2+mro(condition1,20,1);
value2=symbol_high[value1];
{您可以在公式編譯器中查看一下函數(shù)mro的使用,上面的例子中mro(condition1,20,1)的意思是,在最近20根bar上搜索第一個(gè)condition1條件成立的bar并且返回該bar與當(dāng)根bar的距離;value2存儲(chǔ)的是前value1根bar上的最高價(jià)}
//c:=REFX(B,1);
由于MC沒(méi)有辦法引用未來(lái)數(shù)據(jù),比如您是在編號(hào)為10的bar上引用編號(hào)為11的bar上的數(shù)據(jù),那么您需要在編號(hào)為11的bar上去回溯檢查編號(hào)為10的bar上的數(shù)據(jù)以確定編號(hào)為11的bar上的數(shù)據(jù)是策略需要的
?
-
MC回復(fù)討論二:
感謝 Alex,我能直接說(shuō)文華的BARSLAST函數(shù) 跟 函數(shù)mro 是一個(gè)意思么? 是可以用在回測(cè)和實(shí)盤(pán)里吧 ??
?
-
MC回復(fù)討論三:
可以說(shuō)用在回測(cè)和實(shí)盤(pán)中,這兩個(gè)函數(shù)可以達(dá)到同樣的功能,只是文華的barslast函數(shù)只有一個(gè)參數(shù),而mro有三個(gè)參數(shù)。
兩者的對(duì)比:
一、barslast沒(méi)有指定搜索歷史bar的范圍;而mro可以指定搜索的范圍。
二、 barslast只能搜索最近一個(gè),而mro可以指定搜索的是第幾個(gè)。
三、barslast是封閉的不能更改,而mro是一個(gè)開(kāi)放的函數(shù),可以自行查看內(nèi)部邏輯代碼并且修改。
?
-
MC回復(fù)討論四:
可以說(shuō)用在回測(cè)和實(shí)盤(pán)中,這兩個(gè)函數(shù)可以達(dá)到同樣的功能,只是文華的barslast函數(shù)只有一個(gè)參數(shù),而mro有三個(gè)參數(shù)。
兩者的對(duì)比:
一、barslast沒(méi)有指定搜索歷史bar的范圍;而mro可以指定搜索的范圍。
二、 barslast只能搜索最近一個(gè),而mro可以指定搜索的是第幾個(gè)。
三、barslast是封閉的不能更改,而mro是一個(gè)開(kāi)放的函數(shù),可以自行查看內(nèi)部邏輯代碼并且修改。
有思路,想編寫(xiě)各種指標(biāo)公式,程序化交易模型,選股公式,預(yù)警公式的朋友
可聯(lián)系技術(shù)人員 QQ: 511411198 進(jìn)行 有償 編寫(xiě)!(不貴!點(diǎn)擊查看價(jià)格!)
相關(guān)文章
-
沒(méi)有相關(guān)內(nèi)容