MC不斷發(fā)單,導(dǎo)致多空部位對(duì)鎖,很快提示保證金不足
作者:MC 來(lái)源:cxh99.com 發(fā)布時(shí)間:2014年04月17日
- 咨詢內(nèi)容:
在實(shí)盤(pán)交易中,發(fā)現(xiàn)1個(gè)問(wèn)題,需要引起高度注意。 把我使用的經(jīng)驗(yàn)說(shuō)出來(lái),和大家分享。
代碼A: if close>close[1] then buy next bar at market; // 當(dāng)前收盤(pán)價(jià)大于前根收盤(pán)價(jià),下根bar開(kāi)盤(pán)時(shí)買進(jìn);
代碼B: if close<close[1] then sellshort next bar at market; // 當(dāng)前收盤(pán)價(jià)小于前根收盤(pán)價(jià),下根bar開(kāi)盤(pán)時(shí)賣空;
假設(shè)原來(lái)空倉(cāng),close>close[1], 執(zhí)行代碼A后, 會(huì)買進(jìn)1手,持有1手多單。 買進(jìn)1手后, 出現(xiàn) close<close[1],執(zhí)行代碼B, 本來(lái)的預(yù)期是:MC把多單平掉,并反手賣空1手。 但實(shí)際交易中的情況是, MC并沒(méi)有把之前的1手多單平掉,而是直接賣空2手,這樣導(dǎo)致一共持有3口部位:1手多單,2手空單。 多空部位同時(shí)持有,導(dǎo)致鎖單,以及額外占用保證金。
多空對(duì)鎖,持有3口部位后, 下次再出現(xiàn) close>close[1],執(zhí)行代碼A時(shí), MC又會(huì)直接買進(jìn)2手,而不會(huì)把之前的2手空單平掉。 這樣就累積了5口部位: 3手多單,2手空單。
運(yùn)行了一段時(shí)間后, 很快就提示,保證金不足,無(wú)法開(kāi)倉(cāng)了。
后來(lái)經(jīng)過(guò)咨詢、了解,才明白,MC是一款國(guó)外的軟件,在美國(guó)等國(guó)家,沒(méi)有鎖單的機(jī)制。 假設(shè)之前有1手多單, 滿足sellshort的條件后,MC會(huì)送出2手空單, 國(guó)外的期貨經(jīng)紀(jì)商會(huì)自動(dòng)把多單平掉,并反手開(kāi)空。 而在國(guó)內(nèi),由于允許鎖單,就會(huì)導(dǎo)致多空部位不斷累積,很快出現(xiàn)保證金不足的提示。
為了避免這種情況,有個(gè)很簡(jiǎn)單的解決辦法, 在 buy指令之后,不要直接用sellshort, 中間一定要加上 sell多單平倉(cāng)的代碼。 以上代碼,改成 : - if arketposition=0 and close>close[1] then buy next bar at market;
- if marketposition=1 and close<close[1] then sell next bar at market;
- if marketposition=0 and close<close[1] then sellshort next bar at market;
- if marketposition=-1 and close>close[1] then buytocover next bar at market;
復(fù)制代碼 在代碼中作類似上面的處理后, 就不會(huì)出現(xiàn)鎖單的情況了。
- MC技術(shù)部:
這個(gè)問(wèn)題目前還存在嗎?在mc8.5中還需要這樣寫(xiě)嗎?