Escreverei um conselheiro sem custos - página 162

 
SanAlex #:

A função é tirada do código deVladimir Karputov

Obrigado! Agora eu vou tentar

 

Olá Queridos programadores, estou realmente pedindoque escrevam uma EAbaseada no indicador. O indicador não desenha, o que é o mais importante. Mostra bons resultados. Ela tem dois modos de operação. O primeiro, quando um diamante aparece, deve abrir uma posição, enquanto o sinal inverso fecha a ordem e a abre na direção oposta. A segunda modalidade deve ter um lucro e uma parada fixa.


<*.ex* arquivo foi apagado

Как самому создать советника или индикатор - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
Как самому создать советника или индикатор - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
  • www.metatrader5.com
Для разработки торговых систем в платформу встроен собственный язык программирования MetaQuotes Language 5 ( MQL5 ), среда разработки MetaEditor и...
Arquivos anexados:
 
SanAlex #:

A função é tirada do código deVladimir Karputov

Num relance, as posições opostas devem ser fechadas nas posições de abertura:

//--- open position
         if(m_trade.PositionOpen(Symbol(),ORDER_TYPE_BUY,InpLots,priceAsk,0.0,tpAsk))
{
            printf("Position by %s to be opened",Symbol());
            ClosePositions(POSITION_TYPE_SELL);

}
else
...
 
Maksim Sovenko #:

Num relance rápido, é preciso fechar as posições opostas nas posições de abertura:

Você tem 10 posições abertas em VENDA e 10 posições em COMPRA e só precisa fechar posições em COMPRA. Foi o que ele perguntou. E o que você está nos dizendo tem um lugar, se essa é a lógica que você está procurando.

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

Mas talvez eu tenha entendido mal. Se ele não diz nada, então ele o entendeu!

 
Boa tarde, feliz batismo para todos. Tenho tentado adicionar mais duas linhas por conta própria, mas quando a compilo, recebo zero erros e o indicador deixa de aparecer no gráfico. Eu também tentei adicionar uma contração ou expansão entre as linhas no parâmetro Shift quando o zero está tudo bem quando você coloca 1 indicador começa a pendurar e então as linhas são estendidas, você pode fazer com que o parâmetro responsável pela expansão entre as linhas possa entrar um número decimal separado por uma vírgula, tal como 0,78. Obrigado de antemão.
Arquivos anexados:
 
Olá queridos programadores. Você poderia escrever um EA ou melhor um indicador para o MT4? Quero que ele encontre dois castiçais, que necessariamente vão um após o outro com o mesmo Alto ou Baixo. E se você puder adicionar um alerta com um sinal sonoro e uma mensagem na tela do monitor de onde veio um sinal de par de moedas. Muito obrigado.
Arquivos anexados:
41.png  218 kb
44.png  194 kb
 
acya13 #:
Olá, caros programadores. Você poderia escrever um EA ou melhor um indicador para o MT4? Eu gostaria que encontrasse dois castiçais que se sucedessem com o mesmo Alto ou Baixo. E se você puder adicionar um alerta com um sinal sonoro e uma mensagem na tela do monitor de onde veio um sinal de par de moedas. Muito obrigado.

Olá. O indicador será instalado em cada instrumento separadamente? Ou será que a lista de pares de moedas a serem monitorados será definida nos parâmetros?

E uma pergunta sobre a TF. Será fixado nos ajustes?

 
Olá. Se você puder, sim, seria desejável instalá-lo em cada instrumento separadamente. Eu não entendo realmente a segunda pergunta. Se você quer dizer que quer personalizar o indicador, você não precisa fazê-lo de acordo com o sistema. Você pode fazer do jeito que quiser.
 
Boa tarde. Posso escrever um assessor que desabilitaria a auto-negociação no terminal MT4 para todos os pares negociados em um drawdown configurável? Obrigado por isso.
 
gorbenko85 #:
Hi. Posso escrever um EA que desabilitaria o autotrading no terminal MT4 para todos os pares negociados no drawdown estabelecido? Obrigado por isso.

aqui - mas é mais fácil acrescentar em seu EA - ExpertRemove();

função (tecla) é retirada deste códigohttps://www.mql5.com/ru/code/8567

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

você precisa habilitar o .dll para que ele funcione.

Captura de tela 2022-02-07 105001

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

Não, é melhor não permitir o .dll - mas permitir nas configurações do Expert Advisor o .dll e permitir que a EA negocie

Tela 2022-02-02-07 105956

//+------------------------------------------------------------------+
//|                                                    Stop Avto.mq4 |
//|                        Copyright 2021, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2021, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict
//----
#include <WinUser32.mqh>

#define  PAUSE 10
#define  VK_MENU 0x12 //ALT key
#define  VK_CONTROL 0x11 //CTRL key
//----
input double InpSLossAll = 1000000; // ALL Stop Loss --> (In currency the amount)
//---
int     CtrlAlt=0; // 0 - Ctrl, 1 - Alt
string  Key="E";   // Key
//---
double PROFIT_CLOSE=0.00;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   PROFIT_CLOSE=AccountInfoDouble(ACCOUNT_PROFIT);
//---
   if(PROFIT_CLOSE<=-InpSLossAll)
     {
      VK_XXXX(CtrlAlt,Key);
      ExpertRemove();
      PlaySound("expert.wav");
     }
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void VK_XXXX(int ctrlalts,string keys)
  {
   int FirstKey=VK_CONTROL;
   if(ctrlalts==1)
      FirstKey=VK_MENU;
   int SecondKey=StringGetChar(keys,0);
   keybd_event(FirstKey,0,0,0);
   Sleep(PAUSE);
   keybd_event(SecondKey,0,0,0);
   Sleep(PAUSE);
   keybd_event(SecondKey,0,2,0);
   Sleep(PAUSE);
   keybd_event(FirstKey,0,2,0);
  }
//+------------------------------------------------------------------+

ind_HotKeys_v1
ind_HotKeys_v1
  • www.mql5.com
Пример автоматического запуска скрипта при смене таймфрейма или символа
Razão: