Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 1774

 
Mihail Matkovskij #:

Eu escrevi tudo acima. Reler cuidadosamente os postos. Sua tarefa não é algo difícil. Se você se concentrar na tarefa e não brigar no fórum, você estará bem. Boa sorte.

"brigas" é o professor que entra na sala de bate-papo. Desculpe, mas você é mais arrogante do que arrogante arrogante do que articulado. Isso vai passar, eu era assim quando tinha 13 anos.
 
Выше я всё написал

Escreveu o quê? Sobre a matriz? Eu fiz isso primeiro, ou você quer dizer a definição de um indicador? Ou talvez sobre a maneira de abrir dois pedidos e colocar o TF do primeiro no segundo? Uma solução tão limpa que leva a uma série de problemas secundários.

 
Nerd Trader #:
"brigas" - o professor entrou na sala de bate-papo. Desculpe, mas você está colocando seu ego mais para fora do que está escrevendo sobre o assunto. Isso vai passar, eu era assim quando tinha 13 anos.

Não se trata da minha importância ou qualquer outra coisa, trata-se da importância do conhecimento da programação, que você não tem. Se você estivesse na unidade e se comportasse assim na aula, no mínimo o professor o repreenderia ou o expulsaria. É aí que você lhe falaria de seu ego...? :)

Você não tem conhecimento não porque é um principiante, mas porque é ignorante... Quando alguém lhe disser mais uma vez que um EA é diferente de um indicador, você continuará dizendo seu "qual é a diferença". :)

Escrevi: "Indicator opens trades" e "Bot needs a timeframe for a trade". Ninguém responderia a tal pergunta por falta de lógica. Mas eu tentei responder. Recebi muitas acusações e insultos. Isso é em vez de "Obrigado"...?
 
Nerd Trader em um servidor remoto. Poderíamos usar uma tomada, mas ainda é difícil para mim.

Encrypt in magik. Descrevi todo o procedimento de encriptação e decriptação nos artigos.

 
Artyom Trishkin #:

Encrypt in magik. Descrevi todo o procedimento de encriptação e decriptação em artigos.

Dê-me o link, levo cerca de 30 minutos para encontrá-lo a cada vez) Boa abordagem à criptografia.

 
Valeriy Yastremskiy #:

Dê-me o link, levo cerca de 30 minutos para encontrá-lo a cada vez) Boa abordagem à codificação.

Eu mesmo não me lembro :)

Eu também estarei procurando por 30 minutos ...

 
Nerd Trader #:

Isto não vai funcionar porque o bot está rodando em um servidor remoto, então eu escrevo o TF no comentário, isso seria bom, mas ele é sobrescrito pelo ticket quando você fecha parte do volume.

Faça um número mágico individual para pedidos em diferentes períodos de tempo. Este número não muda quando se fecha parcialmente.

//+-----------------------------------------------------------------------------+
//|  Описание : Автоматическая генерация магического номера                     |
//|             Generate Magic Number                                           |
//|             Магический номер генерируется в зависимости от инструмента      |
//|             и таймфрейма                                                    |
//+-----------------------------------------------------------------------------+
int GenerateMagicNumber(int mn)
  {
   int      GenerateMN = 0;
   int      SymNumber = 0;
   int      PMinuts = _Period;
// 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946
   if(StringFind(_Symbol,"BTC",0)>=0)  //1
      SymNumber = 5;
   if(StringFind(_Symbol,"ETH",0)>=0)  //2
      SymNumber = 8;
   if(StringFind(_Symbol,"BCH",0)>=0)  //3
      SymNumber = 13;
   if(StringFind(_Symbol,"LTC",0)>=0)  //4
      SymNumber = 21;
   if(StringFind(_Symbol,"XRP",0)>=0)  //5
      SymNumber = 34;
   if(StringFind(_Symbol,"SOL",0)>=0)  //6
      SymNumber = 55;
   if(StringFind(_Symbol,"LINK",0)>=0) //7
      SymNumber = 89;
   if(StringFind(_Symbol,"XLM",0)>=0)  //8
      SymNumber = 144;
   if(StringFind(_Symbol,"TRX",0)>=0)  //9
      SymNumber = 233;
   if(StringFind(_Symbol,"ATOM",0)>=0) //10
      SymNumber = 377;
   if(StringFind(_Symbol,"XMR",0)>=0)  //11
      SymNumber = 610;
   if(StringFind(_Symbol,"ADA",0)>=0)  //12
      SymNumber = 987;
   if(StringFind(_Symbol,"DOT",0)>=0)  //13
      SymNumber = 1597;
   if(StringFind(_Symbol,"DOGE",0)>=0) //14
      SymNumber = 2584;

   GenerateMN = (int)(SymNumber+PMinuts+mn);

   return (int)(GenerateMN);
  }
//--- End ---
 
Volodymyr Zubov #:

Faça um número mágico individual para pedidos em diferentes períodos de tempo. Este número não muda quando parcialmente fechado.

E por que criptografar o símbolo no número mágico se ele já é legível a partir do pedido/posição? E por que tais valores para o SymNumber?

 
Volodymyr Zubov #:

Faça um número mágico individual para pedidos em diferentes períodos de tempo. Este número não muda em um fechamento parcial.

Obrigado por StringFind. Mas seria muito mais fácil para mim.

int GenerateMagicNumber(int mn)
  {
   int      GenerateMN = 0;
   int      PMinuts = _Period;

   GenerateMN = (int)(PMinuts+mn);

   return (int)(GenerateMN);
  }

E eu obteria o símbolo do pedido mais tarde usando OrderSymbol().

 

Olá!

Se eu receber um sinal (por exemplo, Comprar), preciso abrir um pedido oposto (Vender) depois que as condições do lote forem atendidas.

Eu construí o código:

// Получим значение индикатора
   dMA = iMA(Symbol(), 0,PeriodMA, MovingShift, MODE_SMA, PRICE_CLOSE, 0); // MODE_SMA - простое усреднение , значение 0. PRICE_CLOSE- цена закрытия, значение 0.

// Если нет открытых ордеров, то входим в условие
      if(CountOrders()==0)
     {
// Если появился сигнал на покупку, то откроем ордер на покупку
      if(bSignalBuy() == true)
         vOrderOpenBuy();
         
         if((bSignalBuy() == true)&&(GetLotSize()>LotControl))
         vOrderOpenSell();
// Если появился сигнал на продажу, то откроем ордер на продажу
      if(bSignalSell() == true)
         vOrderOpenSell();
  
         if((bSignalSell() == true)&&(GetLotSize()>LotControl))
         vOrderOpenBuy();
     }

mas quando uma condição ocorre

(GetLotSize()>LotControl)

Mas neste caso, duas ordens opostas são abertas simultaneamente. Como "consertar" isso?