Olá a todos! Tenho um indicador - escrito em mql5 que gostaria de utilizar para criar uma EA. Quando crio uma EA, não consigo encontrar os amortecedores de que preciso, parece que não os tenho de todo. Tenho de o fazer desta forma:
{
//--- indicator buffers mapping SetIndexBuffer(2,BuyBuffer,INDICATOR_DATA);
ResetLastError();
double handle3 = 0;
double handle4 = 0;
double UP = 0;
double DW = 0;
for (int i=1; i<11; i++)
{
UP = iCustom(NULL,0,"StepMA_NRTR",Length,Kv,StepSize,Percentage,Switch,Shift,2,i);
DW = iCustom(NULL,0,"StepMA_NRTR",Length,Kv,StepSize,Percentage,Switch,Shift,3,i);
if (handle3==0)
if (UP != EMPTY_VALUE)
handle3=1;
if (handle4==0)
if (UP != EMPTY_VALUE)
handle4=1;
if (handle3>0 && handle4)
break;
}
Comment(DoubleToString(handle3,Digits())+"\n"+DoubleToString(handle3,Digits()));
return(INIT_SUCCEEDED);
}
Não importa como mudo ou acrescento uma linha iCustom - continuo a receber a mesma coisa no registo:
Olá a todos! Tenho um indicador - escrito em mql5 que gostaria de utilizar para criar uma EA. Quando crio uma EA, não consigo encontrar os amortecedores de que preciso, parece que não os tenho de todo. É assim que eu o faço:
Não importa como mudo ou acrescento uma linha iCustom - continuo a receber a mesma coisa no registo:
Acontece que também preciso de uma paragem de perda - (não consegui perceber porque fechou imediatamente) acrescentei uma paragem de perda
Muito obrigado!!!
Fez um bom trabalho, mas estou interessado num algoritmo completamente diferente para a EA. Gostaria de utilizar um Martingale simples (peneira) com estes parâmetros personalizáveis :
input group "======== МАРТИН ========";
inputint MMType = 1; // 1 - вкл. , 2 - выкл.
inputdouble Multiplikator = 1.667; // множитель следующего лота
inputdouble Step = 150.0; // Расстояние между ордерами
input group "==== МАНИ МЕНЕДЖМЕНТ ====;
inputbool LotConst = true; // фиксированный - true, или от баланса - falseinput group "-: фиксированный лот :--";
inputdouble Lot = 0.01; // первый фиксированный лот, если МАРТИН включен
input group "---: лот от баланса :---";
inputdouble RiskPercent = 30.0; // первый лот в процентах от баланса, если МАРТИН включен
input group "== ПРИБЫЛЬ В ПУНКТАХ ===";
inputdouble TakeProfit = 56.0; // параметры тейкпрофита в пунктах
input group "========= Шаг ==========";
inputdouble Step = 150.0; // шаг в пунктах между ордерами
input group "===== ОГРАНИЧИТЕЛЬ =====";
inputint MaxTrades = 15; // Максимальное количество ордеров одного направления
input group "=== ПРОСКАЛЬЗОВАНИЕ ====";
inputdouble Slippage = 5.0; // Допустимое проскальзывание на новостях в пунктах
input group "== МАГИЧЕСКИЙ НОМЕР ===";
inputint Magic = 1111111 ; // Идентификатор ордера (Магик №)
mas acrescente-lhe o indicador que coloquei - acima. E utilizá-lo como gatilho (falso - trabalhar apenas em CURTO e verdadeiro - trabalhar apenas em LONGO).
Escolhi este indicador - apenas porque funciona como MovingAverages, mas tem alguns filtros de suavização e pontos de mudança de direcção de preços, que podem ser usados como gatilho para o Expert Advisor trabalhar apenas em tendências usando definições de lucro do menu.
E assim que o take profit é fechado, abrimos a ordem seguinte na mesma direcção (na tendência), até que a tendência acabe e o nosso gatilho seja trocado. Se uma ordem aparecer fora de tendência (no momento em que a tendência muda de um estado para outro), devemos usar Martins com configurações do menu para ela.
Se quiser ajudar a escrever uma tal EA, ficar-lhe-ia muito grato.
Agora sobre o assunto:
Compreendo que no meu código do próprio indicador - não são amortecedores de indicador, mas sim conjuntos de amortecedores e você - no Expert Advisor trouxe-os para o indicador.
Compreendi que no meu código do próprio indicador - não estão localizados buffers indicadores, mas sim conjuntos de buffers e você - no Expert Advisor trouxe-os para o indicador.
Por favor aconselhe-me se entendi correctamente?
Sou autodidacta e não sou capaz de o explicar, acabei de seleccionar as funções de que preciso.
Eu basicamente copio os códigos de Vladimir Karputov, muito obrigado! - Se tiver alguma pergunta, ele dir-lhe-á.
Por favor, diga-me de que classe herdar a sua classe a fim de utilizar todos os métodos destes
utilizar todos os métodos destas classes dentro da sua classe, sem criar objectos dentro da sua classe?
Herança significa criar uma classe.
Olá a todos!
Tenho um indicador - escrito em mql5 que gostaria de utilizar para criar uma EA.
Quando crio uma EA, não consigo encontrar os amortecedores de que preciso, parece que não os tenho de todo.
Tenho de o fazer desta forma:
{ //--- indicator buffers mapping SetIndexBuffer(2,BuyBuffer,INDICATOR_DATA); ResetLastError(); double handle3 = 0; double handle4 = 0; double UP = 0; double DW = 0; for (int i=1; i<11; i++) { UP = iCustom(NULL,0,"StepMA_NRTR",Length,Kv,StepSize,Percentage,Switch,Shift,2,i); DW = iCustom(NULL,0,"StepMA_NRTR",Length,Kv,StepSize,Percentage,Switch,Shift,3,i); if (handle3==0) if (UP != EMPTY_VALUE) handle3=1; if (handle4==0) if (UP != EMPTY_VALUE) handle4=1; if (handle3>0 && handle4) break; } Comment(DoubleToString(handle3,Digits())+"\n"+DoubleToString(handle3,Digits())); return(INIT_SUCCEEDED); }Não importa como mudo ou acrescento uma linha iCustom - continuo a receber a mesma coisa no registo:
2021.06.26 17:59:42.251 Proba (EURUSD,M15) 1.00000
E o comentário: 1.00000 e 1.00000 novamente.
Ajude-me a compreender - é adequado para criar uma EA, ou preciso de a refinar, ou talvez esteja a fazer algo de errado?Em MT5 é utilizado de forma diferente. Veja o exemplo na ajuda.
iCustom
Devolve o cabo do indicador personalizado especificado.
https://www.mql5.com/ru/docs/indicators/icustom
Em MT5 é utilizado de forma diferente. Veja o exemplo na ajuda.
iCustom
Devolve o cabo do indicador personalizado especificado.
https://www.mql5.com/ru/docs/indicators/icustom
Estou apenas a começar a programar e a pedir-vos que sejam indulgentes comigo.
Começo a suspeitar que isto requer uma função adicional
Por favor explique.... onde .... e como....?
Olá a todos!
Tenho um indicador - escrito em mql5 que gostaria de utilizar para criar uma EA.
Quando crio uma EA, não consigo encontrar os amortecedores de que preciso, parece que não os tenho de todo.
É assim que eu o faço:
Não importa como mudo ou acrescento uma linha iCustom - continuo a receber a mesma coisa no registo:
2021.06.26 17:59:42.251 Proba (EURUSD,M15) 1.00000
E o comentário: 1.00000 e 1.00000 novamente.
Ajude-me a compreender - é adequado para criar uma EA, ou preciso de a refinar, ou talvez esteja a fazer algo de errado?Código:
Resultado:
Olá a todos!
Tenho um indicador - escrito em mql5 - que gostaria de utilizar para criar uma EA.
Aqui consegui - parece funcionar! (onde o amarelo é para amortecedores)
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Também preciso de uma paragem de perda(não consegui perceber porque fechou imediatamente).
Começo a suspeitar que isto requer uma função extra
É isso mesmo. Liga-se o indicador no OnInit, definem-se parâmetros lá e obtém-se a sua pega. E depois utilizar o CopyBuffer.
https://www.mql5.com/ru/docs/series/copybuffer
Eu fiz isto - parece estar a funcionar! (onde o amarelo é o amortecedor)
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Acontece que também preciso de uma paragem de perda - (não consegui perceber porque fechou imediatamente) acrescentei uma paragem de perda
Muito obrigado!!!
Fez um bom trabalho, mas estou interessado num algoritmo completamente diferente para a EA. Gostaria de utilizar um Martingale simples (peneira) com estes parâmetros personalizáveis :
mas acrescente-lhe o indicador que coloquei - acima. E utilizá-lo como gatilho (falso - trabalhar apenas em CURTO e verdadeiro - trabalhar apenas em LONGO).
Escolhi este indicador - apenas porque funciona como MovingAverages, mas tem alguns filtros de suavização e pontos de mudança de direcção de preços, que podem ser usados como gatilho para o Expert Advisor trabalhar apenas em tendências usando definições de lucro do menu.
E assim que o take profit é fechado, abrimos a ordem seguinte na mesma direcção (na tendência), até que a tendência acabe e o nosso gatilho seja trocado. Se uma ordem aparecer fora de tendência (no momento em que a tendência muda de um estado para outro), devemos usar Martins com configurações do menu para ela.
Se quiser ajudar a escrever uma tal EA, ficar-lhe-ia muito grato.
Agora, para o assunto:
Sou autodidacta e não sou capaz de o explicar, acabei de seleccionar as funções de que preciso.
Eu basicamente copio os códigos de Vladimir Karputov, muito obrigado! - Se tiver alguma pergunta, ele dir-lhe-á.
Compreendo que precisa de um indicador para filtrar !
Precisa de passar o seu Expert Advisor através deste filtro