如何寫一個(gè)變量Mynet,用來指示每次平倉(cāng)時(shí),賬戶凈值是否創(chuàng)新高? [MC]
-
MC用戶求助:
input: account("9999-088194(BaseCurrency)"), Price( Close ), FastLength( 9 ), SlowLength( 18 ) ;
{取交易追蹤器中賬戶欄位的”今日余額“,所以需要初始輸入您的資金賬號(hào)給參數(shù)account}
variables: var0( 0 ), var1( 0 ), mynet(0);
array: jzhi[1](0);
{聲明了一個(gè)數(shù)組,jzhi[1]用于存儲(chǔ)歷史最高的今日余額,而jzhi[0]取最新的今日余額}
once jzhi[1]=getrtaccountequity(account);
{取初始的今日余額}
var0 = AverageFC( Price, FastLength ) ;
var1 = AverageFC( Price, SlowLength ) ;
{這里以簡(jiǎn)單的MA策略為例,var0為快線值,var1為慢線值}
condition1 = CurrentBar > 1 and var0 crosses over var1 ;
if condition1 then begin
? ?? ???jzhi[0]=getrtaccountequity(account);
? ?? ???if jzhi[0]>jzhi[1] then begin
? ?? ?? ?? ?? ? mynet=1;
? ?? ?? ?? ?? ? jzhi[1]=jzhi[0];
? ?? ???end
? ?? ???else mynet=-1;? ?? ?? ?? ?? ?? ?? ???
{金叉出現(xiàn)時(shí),取一次今日余額,與歷史最高今日余額作比較,若創(chuàng)新高則賦值mynet為1并且將新高存儲(chǔ)起來;若沒有創(chuàng)新高則賦值為-1返回 }
? ?? ???Buy ( "MA2CrossLE" ) next bar at market ;
{這里使用的是市價(jià)單,而且在下單前取今日余額進(jìn)行判斷,并沒有將平倉(cāng)與進(jìn)場(chǎng)分開;盡管這樣會(huì)與先平倉(cāng),然后取今日余額有稍微的差異}
end;
{下面是空頭進(jìn)場(chǎng)的例子,與上面邏輯相同,不再多述}
condition1 = CurrentBar > 1 and var0 crosses under var1 ;
if condition1 then begin
? ?? ???jzhi[0]=getrtaccountequity(account);
? ?? ???if jzhi[0]>jzhi[1] then begin
? ?? ?? ?? ?? ? mynet=1;
? ?? ?? ?? ?? ? jzhi[1]=jzhi[0];
? ?? ???end
? ?? ???else mynet=-1;? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??
? ?? ???Sell Short ( "MA2CrossSE" ) next bar at market ;
end;
注意事項(xiàng):
一、我使用的是simnow賬號(hào)進(jìn)行測(cè)試的,每一分鐘,交易追蹤器中賬戶欄位的數(shù)據(jù)更新一次,但是實(shí)盤的這些數(shù)據(jù)更新頻率我并沒有測(cè)試過,所以希望您自己測(cè)試一下。
二、交易追蹤器中賬戶欄位的數(shù)據(jù),MC模擬賬號(hào)是開倉(cāng)和平倉(cāng)時(shí)更新一次,所以通過getrtaccountequit函數(shù)在交易中取的值在沒有開倉(cāng)平倉(cāng)情況下實(shí)際上是不變的數(shù)據(jù)。
三、這里使用的是平倉(cāng)反向語句下單,并沒有將平倉(cāng)和反向開倉(cāng)分開進(jìn)行,所以在下市價(jià)單之前取”今日余額“的數(shù)值進(jìn)行判斷;若將平倉(cāng)和開倉(cāng)分開進(jìn)行,取的”今日余額“更準(zhǔn)確一些,并且這種情況對(duì)條件單也會(huì)更準(zhǔn)確一些。
四、將平倉(cāng)和反向進(jìn)場(chǎng)一起使用,也就是直接使用平倉(cāng)反向委托語句時(shí),不能使用條件單,因?yàn)檫@樣判斷的誤差會(huì)很大,條件單在哪一根bar上成交實(shí)際上是不確定的;若您根據(jù)您的條件單的價(jià)格對(duì)”今日余額“進(jìn)行調(diào)整,這個(gè)調(diào)整后的“今日余額”會(huì)更準(zhǔn)確。?
-
MC回復(fù)討論一:
input: account("9999-088194(BaseCurrency)"), Price( Close ), FastLength( 9 ), SlowLength( 18 ) ;
{取交易追蹤器中賬戶欄位的”今日余額“,所以需要初始輸入您的資金賬號(hào)給參數(shù)account}
variables: var0( 0 ), var1( 0 ), mynet(0);
array: jzhi[1](0);
{聲明了一個(gè)數(shù)組,jzhi[1]用于存儲(chǔ)歷史最高的今日余額,而jzhi[0]取最新的今日余額}
once jzhi[1]=getrtaccountequity(account);
{取初始的今日余額}
var0 = AverageFC( Price, FastLength ) ;
var1 = AverageFC( Price, SlowLength ) ;
{這里以簡(jiǎn)單的MA策略為例,var0為快線值,var1為慢線值}
condition1 = CurrentBar > 1 and var0 crosses over var1 ;
if condition1 then begin
? ?? ???jzhi[0]=getrtaccountequity(account);
? ?? ???if jzhi[0]>jzhi[1] then begin
? ?? ?? ?? ?? ? mynet=1;
? ?? ?? ?? ?? ? jzhi[1]=jzhi[0];
? ?? ???end
? ?? ???else mynet=-1;? ?? ?? ?? ?? ?? ?? ???
{金叉出現(xiàn)時(shí),取一次今日余額,與歷史最高今日余額作比較,若創(chuàng)新高則賦值mynet為1并且將新高存儲(chǔ)起來;若沒有創(chuàng)新高則賦值為-1返回 }
? ?? ???Buy ( "MA2CrossLE" ) next bar at market ;
{這里使用的是市價(jià)單,而且在下單前取今日余額進(jìn)行判斷,并沒有將平倉(cāng)與進(jìn)場(chǎng)分開;盡管這樣會(huì)與先平倉(cāng),然后取今日余額有稍微的差異}
end;
{下面是空頭進(jìn)場(chǎng)的例子,與上面邏輯相同,不再多述}
condition1 = CurrentBar > 1 and var0 crosses under var1 ;
if condition1 then begin
? ?? ???jzhi[0]=getrtaccountequity(account);
? ?? ???if jzhi[0]>jzhi[1] then begin
? ?? ?? ?? ?? ? mynet=1;
? ?? ?? ?? ?? ? jzhi[1]=jzhi[0];
? ?? ???end
? ?? ???else mynet=-1;? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??
? ?? ???Sell Short ( "MA2CrossSE" ) next bar at market ;
end;
注意事項(xiàng):
一、我使用的是simnow賬號(hào)進(jìn)行測(cè)試的,每一分鐘,交易追蹤器中賬戶欄位的數(shù)據(jù)更新一次,但是實(shí)盤的這些數(shù)據(jù)更新頻率我并沒有測(cè)試過,所以希望您自己測(cè)試一下。
二、交易追蹤器中賬戶欄位的數(shù)據(jù),MC模擬賬號(hào)是開倉(cāng)和平倉(cāng)時(shí)更新一次,所以通過getrtaccountequit函數(shù)在交易中取的值在沒有開倉(cāng)平倉(cāng)情況下實(shí)際上是不變的數(shù)據(jù)。
三、這里使用的是平倉(cāng)反向語句下單,并沒有將平倉(cāng)和反向開倉(cāng)分開進(jìn)行,所以在下市價(jià)單之前取”今日余額“的數(shù)值進(jìn)行判斷;若將平倉(cāng)和開倉(cāng)分開進(jìn)行,取的”今日余額“更準(zhǔn)確一些,并且這種情況對(duì)條件單也會(huì)更準(zhǔn)確一些。
四、將平倉(cāng)和反向進(jìn)場(chǎng)一起使用,也就是直接使用平倉(cāng)反向委托語句時(shí),不能使用條件單,因?yàn)檫@樣判斷的誤差會(huì)很大,條件單在哪一根bar上成交實(shí)際上是不確定的;若您根據(jù)您的條件單的價(jià)格對(duì)”今日余額“進(jìn)行調(diào)整,這個(gè)調(diào)整后的“今日余額”會(huì)更準(zhǔn)確。
有思路,想編寫各種指標(biāo)公式,程序化交易模型,選股公式,預(yù)警公式的朋友
可聯(lián)系技術(shù)人員 QQ: 511411198 進(jìn)行 有償 編寫!(不貴!點(diǎn)擊查看價(jià)格!)
相關(guān)文章
-
沒有相關(guān)內(nèi)容