Gerenciamento de Ordens Pendentes com RSI - Sistema para MetaTrader 4

Mike 2014.08.12 22:46 19 0 0
Anexo

Introdução

Se você é trader e utiliza o MetaTrader 4, saiba que gerenciar suas ordens pendentes pode ser uma tarefa desafiadora. Hoje, vou explicar como configurar um sistema que usa o RSI (Índice de Força Relativa) para automatizar esse processo.

O que você vai aprender:

  1. Como criar ordens pendentes automáticas usando RSI;
  2. Reduzir riscos durante o fim de semana e restaurar as posições na semana seguinte;
  3. Receber atualizações úteis por e-mail.

Recomendações:

1. Ativando o modo de teste: Defina testmode como true para simulações e como false para o modo real:

extern bool testmode = false; // true: para backtest

2. Configurando símbolos de negociação: Se estiver no modo de teste, defina apenas um símbolo de negociação:

extern string tradesymbol1 = "EURUSDm_802_2802_1602_200_860";
extern string tradesymbol2 = "";
extern string tradesymbol3 = "";
extern string tradesymbol4 = "";
extern string tradesymbol5 = "";
extern string tradesymbol6 = "";

No modo de conta real, defina testmode como false e configure os símbolos da seguinte forma (use "," para separar símbolos e "_" para separar os parâmetros do símbolo):

extern string tradesymbol1 = "EURUSDm_802_2802_1602_200_860,USDCHFm_506_2606_1506_120_600";
extern string tradesymbol2 = "USDJPYm_460_2802_1302_100_320";
extern string tradesymbol3 = "";
extern string tradesymbol4 = "";
extern string tradesymbol5 = "";
extern string tradesymbol6 = "";

3. Gerenciando ordens pendentes no fim de semana: Se quiser deletar ordens pendentes durante o fim de semana, defina weekenddelete como true. Caso contrário, se preferir ampliar o gap pendente e restaurá-lo na semana seguinte, defina como false.

extern bool weekenddelete = false; // true: deletar, false: modificar

4. Configurando horários do fim de semana: O horário do início e fim do modo de fim de semana (5 significa sexta-feira, 7 significa domingo, o horário está em GMT, ajuste conforme sua localidade):

extern int weekendbeginday = 5;
extern string weekendbegintime = "20:30"; // sexta-feira 20:30
extern int weekendendday = 7;
extern string weekendendtime = "23:30"; // domingo 20:30

5. Notificações por e-mail: Configure os símbolos que deseja receber relatórios sobre o valor do RSI (valores >70 ou <30). Lembre-se de modificar o AUDJPYm se sua conta não for mini:

string symbolsstr1 = "AUDJPYm,AUDCADm,AUDCHFm,...";
string symbolsstr2 = "GBPCHFm,GBPJPYm,...";
string symbolsstr3 = "EURNOKm,EURNZDm,...";
long sendmininterval = 3600;

6. Configuração do RSI:

extern int rsitimeframe = PERIOD_H4;
extern int rsiperiod = 14;
extern ENUM_APPLIED_PRICE rsiappliedprice = PRICE_CLOSE;
extern int rsishift = 0;
extern double rsiupperline = 70;
extern double rsilowerline = 30;

7. Identificando o modo de fim de semana: Use magicweekendexpiration para identificar o modo de fim de semana.

int magicweekendexpiration = 1577836800; // 2020-01-01 00:00:00

8. Observações finais: Caso a modificação para o modo de fim de semana falhe, o EA enviará um e-mail e tentará até MAX_MODIFY_TRY_TIME vezes até ter sucesso. Não é aplicado stop loss, e se uma ordem de perda mínima de um símbolo exceder o pendingpips, o EA pendurará outra ordem do mesmo símbolo.

Se você encontrou algum bug ou tem sugestões, não hesite em me avisar!

Lista
Comentário 0