MetaTrader5
Exp_Iin_MA_Signal_MMRec: Um Sistema de Trading Eficiente para MetaTrader 5
O sistema de trading baseado no Iin_MA_Signal oferece sinais de trading com a capacidade de ajustar o volume de uma operação futura dependendo das performances das operações anteriores. Os sinais de trading são gerados quando uma barra se fecha, indicando uma mudança de tendência (mostrada pela cor do rótulo do indicador).Foi adicionado um bloco de variáveis de entrada para gerenciar os volumes das posições abertas:input uint BuyTotalMMTriger=5; // Número das últimas operações de compra para calcular o stop loss
input uint BuyLossMMTriger=3; // Número de operações de compra com perdas para reduzir o MM
input uint SellTotalMMTriger=5;// Número das últimas operações de venda para calcular o stop loss
input uint SellLossMMTriger=3; // Número de operações de venda com perdas para reduzir o MM
input double SmallMM_=0.01; // Parte do depósito em uma operação em caso de perda
input double MM=0.1 // Parte do depósito em uma operação durante o trading normal
input MarginMode MMMode=LOT; // Método de determinação do valor do lote
Com essas entradas, ao selecionar as últimas cinco operações, se três delas forem perdas em uma única direção, o EA abre a próxima operação na mesma direção com o volume de 0.01 lote. Se houver menos de três operações com perdas entre as últimas cinco, o volume da posição será de 0.1.Este EA é uma versão aprimorada do Exp_Iin_MA_Signal. O bloco de entradas do EA foi adicionado ao código e o bloco de abertura/fechamento de posições foi modificado://---- Execução da operação
//---- Fechando uma posição longa pelo número mágico
BuyPositionClose_M(BUY_Close,Symbol(),Deviation_,BuyMagic);
//---- Fechando uma posição curta pelo número mágico
SellPositionClose_M(SELL_Close,Symbol(),Deviation_,SellMagic);
double mm;
//---- Abrindo uma posição longa pelo número mágico
if(BUY_Open)
{
mm=BuyTradeMMRecounterS(BuyMagic,BuyTotalMMTriger,BuyLossMMTriger,SmallMM_,MM); // define o volume da posição longa dependendo dos resultados das operações anteriores
BuyPositionOpen_M1(BUY_Open,Symbol(),UpSignalTime,mm,MMMode,Deviation_,StopLoss_,TakeProfit_,BuyMagic);
}
//---- Abrindo uma posição longa pelo número mágico
if(SELL_Open)
{
mm=SellTradeMMRecounterS(SellMagic,SellTotalMMTriger,SellLossMMTriger,SmallMM_,MM); // define o volume da posição curta dependendo dos resultados das operações anteriores
SellPositionOpen_M1(SELL_Open,Symbol(),DnSignalTime,mm,MMMode,Deviation_,StopLoss_,TakeProfit_,SellMagic);
}
Para que o EA funcione corretamente, o arquivo compilado Iin_MA_Signal.ex5 deve estar disponível na pasta <terminal_data_directory>\MQL5\Indicators.Os parâmetros de entrada do Expert Advisor padrão, sem stops, foram utilizados durante os testes mostrados abaixo.Fig. 1. Exemplos de trades no gráficoResultados do teste do GBPJPY H1 ao longo do ano de 2017:Fig. 2. Gráfico dos resultados do teste
2018.10.26