這個(gè)條件過(guò)濾如何表達(dá)?
作者:金字塔 來(lái)源:cxh99.com 發(fā)布時(shí)間:2014年10月18日
- 咨詢內(nèi)容:
老師,我想在日內(nèi)模型中加入一個(gè)這樣的條件過(guò)濾:
連續(xù)兩次開多(或開空)被止損后(如果是開多的話,中間有開多贏利的話就不算),下一次開多(有可能是當(dāng)天或不是當(dāng)天了,或是1、2天后的)的價(jià)格必須大于上一次開多時(shí)的開倉(cāng)價(jià)格。
請(qǐng)教應(yīng)如何表達(dá)?先謝了!
- 金字塔客服:
這條件看似簡(jiǎn)單,難度卻不了,難點(diǎn)在于:
一是連續(xù)兩次的統(tǒng)計(jì)表達(dá);
二是日內(nèi)模型,卻有可能要調(diào)用昨天甚至前幾天的相關(guān)數(shù)據(jù),包括開平倉(cāng)信息、上次被止損平倉(cāng)的開倉(cāng)價(jià);
以開多為例:前天有1次開多是達(dá)到止損條件而平倉(cāng)出場(chǎng)的,昨天也有1次開多是達(dá)到止損條件而平倉(cāng)出場(chǎng)的,
中間無(wú)論是否出現(xiàn)N次開空的止贏止損都不影響條件成立,但如果有出現(xiàn)開多的,只要它是止贏或是正常收盤平倉(cāng)等(只要不是被止損出場(chǎng))的,
那止條件就不成立了。
懇請(qǐng)老師和各位高手指教?。。?br/>
- 用戶回復(fù):
variable:n=0;
if holding>0 and 多倉(cāng)止損條件 then begin
sell(1,0,market);
n:=n+1;
end
if holding>0 and 其他平倉(cāng)條件 then begin
sell(1,0,market);
n:=0;
end
n=2就表示你的連續(xù)兩次了,用全局變量來(lái)記錄止損的次數(shù),如果非止損平倉(cāng)的那么就把全局變量重置為0
- 網(wǎng)友回復(fù):
新年好!感謝老師指點(diǎn)!雖然我的平倉(cāng)條件較多,但這個(gè)確實(shí)也是解決思路來(lái)的。另外,我想加入一個(gè)時(shí)間限制:三日內(nèi),連續(xù)有連續(xù)兩次開多被止損的,這個(gè)“三日內(nèi)”如何表示好一點(diǎn)?謝了
- 網(wǎng)友回復(fù):
variable:n=0;
if holding>0 and 多倉(cāng)止損條件 then begin
sell(1,0,market);
n:=n+1;
end
if holding>0 and 其他平倉(cāng)條件 then begin
sell(1,0,market);
n:=0;
end
d1:valuewhen(n=1 and ref(n=0,1),date);
d2:date;
d2-d1<3
d1是第一次止損平倉(cāng)的日期,d2是當(dāng)前日期,相減后判斷是否小于3就行