幫修正一下軟件限制開關(guān)
作者:金字塔 來源:cxh99.com 發(fā)布時間:2017年11月07日
-
咨詢內(nèi)容:
幫修正一下這個日內(nèi)限制
因為倉位管理有分形,不能在IF語句中開平倉
要求是這樣的:日內(nèi)只允許一次上穿或下穿開平倉,但是在上方及下方可以開平倉多次
? ? ? ? ? ? ? ?當上穿開多倉后,如果行情回到下方,那平能平多倉,但能平空倉,如果再回到上方多空不限
? ? ? ? ? ? ? ?
當下穿開空倉后,如果行情回到上方,那平能平空倉,但能平多倉,如果再回到下方多空不限
下面是精減過的調(diào)式代碼
ma1:ma(c,100);
KDD:=close>ma1; ? ? ? ? ?//開多條件
PDD:=ma1>close; ? ? ? ? ?//平多條件
KKD:=ma1>close; ? ? ? ? ?//開空條件
PKD:=close>ma1; ? ? ? ? ?//平空條件
//------------------軟件限制開關(guān)開始-----------
variable:n1:=1;
variable:n2:=1;
//正關(guān)
if n1=1 and KDD and holding=0 then begin ?//怎么知道開過倉?
? // ?buy(1,1,marketr); ?因為開平倉部門有倉位分形,沒有辦法在這里開平倉
? ? n1:=0; ? ? ?//平多,開空無效
end
//負關(guān)
if n2=1 and KKD and holding=0 then begin
? // ?buy(1,1,marketr); 因為開平倉部門有倉位分形,沒有辦法在這里開平倉
? ? ?KDD:=0;
? ? n2:=0; ? ? ?//平空,開多無效
end
if time=closetime(0) then n1:=1;
if time=closetime(0) then n2:=1;
IF ?n1=0 and C<ma1 ?THEN ? PDD:=0; ? ?//當開過一次多倉時,價格回到低位也不允許平多倉
IF ?n2=0 and C>ma1 ?THEN ? PKD:=0; ? ?//當開過一次空倉時,價格回到高位也不允許平空倉
//--------------軟件限制開關(guān)結(jié)束---------得到的標志可以放在后面加以限制-----------------
KD:=KDD ; ? ? ? ? ?//開多條件
PD:=PDD and n1; ? ? ? ? ?//平多條件
KK:=KKD and n2; ? ? ? ? ?//開空條件
PK:=PKD ;//and n1; ? ? ? ? ?//平空條件
平空:SELLSHORT(PK,1,THISCLOSE); ? ? ? ? ? ? ? ? ?//平空信號
開多:BUY(KD AND HOLDING=0,1,THISCLOSE); ? ? ? ? ?//開多信號
平多:SELL(PD,1,THISCLOSE); ? ? ? ? ? ? ? ? ? ? ? //平多信號
開空:BUYSHORT(KK AND HOLDING=0,1,THISCLOSE); ? ? //開空信號
?
-
金字塔客服:
當上穿開多倉后,如果行情回到下方,那平能平多倉,但能平空倉,如果再回到上方多空不限
這句要表達什么意思?
?
-
用戶回復(fù):
就是防止來回的打倉,在那個均線上方,不限制,要是上了均線開多后,又下來,就是杠倉了
相當于這樣,PD:=PDD ?and C<ma1 ?AND ?今天開的倉就不能平倉,但是昨天的單可以平 ? (如果C>ma1那平倉有效); ? ? ? ? ?//平多條件?; ? ? ??
這有一個不會做的標志,那個開關(guān)用N可以,但是開倉標志不行,因為下面有可能開倉許可但是他并沒有開倉,因為這個標志只有開過倉才有效,想在IF里不停的置,當有效開倉后就沒有加法進IF里置1,但是寫不出來
?
-
網(wǎng)友回復(fù):
這里面有一個問題,是我上方的開倉請求,下面這開平倉處理不一定會執(zhí)行,因為開平倉中還有很多限制
我上面沒有寫更多的如下(這個當日只限一次的開倉限制只是其中的一個限制)開多:BUY(KD ?and ?時間 ? AND 開倉數(shù)量 ?AND 限制開倉 AND?限制開倉2?AND HOLDING=0,1,THISCLOSE); ? ? ? ? ?//開多信號平多:SELL(PD and?時間 ? AND 開倉數(shù)量 ?AND 限制平倉 AND?限制平倉2,1,THISCLOSE); ? ? ? ? ? ? ? ? ? ? ? //平多信號?
-
網(wǎng)友回復(fù):
??
?Post By:2017-2-16 11:18:33 ???Post IP:180.173.193.42[只看該作者]?
當上穿開多倉后,如果行情回到下方,那平能平多倉,但能平空倉,如果再回到上方多空不限
這句要表達什么意思?
這句話沒有說明不好意思
當上穿開多倉后,如果行情回到下方(這只限日內(nèi)回頭),那價格在均線下方,平多無效,但能平空(我的倉位里可以同時開多空的,所以我需要一個標簽讓執(zhí)行空方操作有效)
如果價格再次日內(nèi)回到上方(剛才上穿的),那么所有的多空操作不限制,就是這個限制程序相當于無效的
|