一、MACD指标,参数按照常规设置(12,26,9),当DIF上穿DEA(金叉),开仓买多3手,如果有空单就平空3手买多3手; 当DIF下穿DEA(死叉)时,开仓卖空3手,如果原来有多单,则平多3手卖空3手。
二、均线指标,当MA2上穿MA5(金叉),则开仓买多3手,如果有空单就平空3手买多3手; 当MA2下穿MA5(死叉)时,开仓卖空3手,如果原来有多单,则平多3手卖空3手。
你这是两个交易策略啊,是要分别写两个策略?另外你的均线指标中,MA2,MA5的定义是分别是2日均线和5日均线?
另外这两个指标的编写可以参考我们系统中自带的这两个策略。
此主题相关图片如下:1111.png
[此贴子已经被作者于2021/2/9 15:38:57编辑过]
参考如下代码:一:MACD指标
INPUT:S(12,5,30,3),P(26,20,40,2),M(9,2,20,2),SS(3,1,100,1);
DIF:=EMA(C,S)-EMA(C,P);
DEA:=EMA(DIF,M);
CONPKKD:CROSS(DIF,DEA);
CONPDKK:CROSS(DEA,DIF);
IF CONPKKD THEN BEGIN
SELLSHORT(HOLDING<0,HOLDING,MARKET);
BUY(HOLDING=0,SS,MARKET);
END
IF CONPDKK THEN BEGIN
SELL(HOLDING>0,HOLDING,MARKET);
BUYSHORT(HOLDING=0,SS,MARKET);
END
二、均线指标
INPUT:SS(3,1,100,1);
MA2:MA(C,2);
MA5:MA(C,5);
CONPKKD:CROSS(MA2,MA5);
CONPDKK:CROSS(MA5,MA2);
IF CONPKKD THEN BEGIN
SELLSHORT(HOLDING<0,HOLDING,MARKET);
BUY(HOLDING=0,SS,MARKET);
END
IF CONPDKK THEN BEGIN
SELL(HOLDING>0,HOLDING,MARKET);
BUYSHORT(HOLDING=0,SS,MARKET);
END
[此贴子已经被作者于2021/2/9 16:04:36编辑过]
老师 你好 如果我想修改MACD指标”的参数,如把原来的标准参数12,26,9改为其它参数,如3,100,5,应该如何修改下面这句指令?INPUT:S(12,5,30,3),P(26,20,40,2),M(9,2,20,2),SS(3,1,100,1);
就是修改S\P\M变量定义的第一个参数啊,这个参数是默认值,第二、三参数是最小值和最大值,最后一个参数是步长。例如:
INPUT:S(3,5,30,3),P(100,20,400,2),M(5,2,20,2)