Estratégia de combinação dos indicadores MACD+MA

Autora:Zero., Data: 2018-11-22 19:51:09
Tags:MAMACDMyLanguage

O indicador MA é abreviado para inglês ((Moving average) e é chamado de indicador de média móvel. A média móvel ((MA) tem uma característica de tendência, que é relativamente estável, ao contrário da linha K do dia que vai subir e cair. Quanto mais longa a média móvel, mais estável o desempenho. Não é fácil subir e descer, você deve esperar pela verdadeira clareza da tendência do preço das ações. A média móvel é, em última análise, uma ferramenta de rastreamento de tendência que facilita a identificação se uma tendência terminou ou reverteu e se uma nova tendência está emergindo.

Nesta edição, compartilhamos a estratégia de combinação do índice MACD + MA. Na análise técnica, a combinação de indicadores é muito comum. Diferentes indicadores têm diferentes pontos de operação e métodos de análise. A combinação de indicadores pode melhorar a precisão do sinal. A estratégia é comparar a relação entre preço e MA e, em seguida, medir a aceleração do movimento dos preços pelo índice MACD para julgar o estado do mercado e construir uma estratégia de negociação de tempo simples.


(*backtest
start: 2018-11-01 00:00:00
end: 2018-11-22 00:00:00
period: 1h
exchanges: [{"eid":"Bitfinex","currency":"BTC_USD"}]
*)


// MACD calculation
FASTLENGTH:=12;
SLOWLENGTH:=26; 
MACDLENGTH:=9;

// Length of MA
L1:=50;
L2:=120;

// stop loss 止损 5%	
STOPLOSS:=5; 

//MACD
MACDVALUE:=EMA(CLOSE,FASTLENGTH)-EMA(CLOSE,SLOWLENGTH);
AVGMACD:=EMA(MACDVALUE,MACDLENGTH);
MACDDIFF:=MACDVALUE-AVGMACD;

//MA1、MA2
DMA1:=MA(C,L1);
DMA2:=MA(C,L2);
BUYCONDITION:=MACDVALUE>0 && DMA1>DMA2 && MACDDIFF>0 && C>DMA1 && REF(C,1)>REF(DMA1,1);
SELLCONDITION:=MACDVALUE<0 && DMA1<DMA2 && MACDDIFF<0 && C<DMA1 && REF(C,1)<REF(DMA1,1);

// 开仓条件 When to open position
BKVOL=0 AND BUYCONDITION,BK;
SETSIGPRICETYPE(BK,NEW_ORDER);
SKVOL=0 AND SELLCONDITION,SK;
SETSIGPRICETYPE(SK,NEW_ORDER);

// 离场条件 When to close position
BKVOL>0 AND (REF(MACDVALUE,1)<0 OR REF(DMA1,1)<REF(DMA2,1)),SP;
SKVOL>0 AND (REF(MACDVALUE,1)>0 OR REF(DMA1,1)>REF(DMA2,1)),BP;

// 启动止损 Start stop loss
SKVOL>0 AND HIGH>=SKPRICE*(1+STOPLOSS*0.01),BP;
BKVOL>0 AND LOW<=BKPRICE*(1-STOPLOSS*0.01),SP;
AUTOFILTER;

Relacionados

Mais.