Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 1774

 
Mihail Matkovskij #:

Ho scritto tutto sopra. Rileggete attentamente i post. Il vostro compito non è qualcosa di difficile. Se ti concentri sul compito e non battibecchi sul forum andrai bene. Buona fortuna.

"battibecco" è l'insegnante che entra in chat. Mi dispiace, ma sei più un arrogante arrogante arrogante che un articolato articolato. Passerà, io ero così quando avevo 13 anni.
 
Выше я всё написал

Scritto cosa? Riguardo all'array? L'ho fatto prima io o intende la definizione di un indicatore? O forse sul modo di aprire due ordini e mettere il TF del primo nel secondo? Una soluzione così ordinata che porta a un mucchio di problemi collaterali.

 
Nerd Trader #:
"bicker" - l'insegnante è entrato nella chat. Scusa, ma stai mettendo in mostra il tuo ego più di quanto tu stia scrivendo sul punto. Passerà, io ero così quando avevo 13 anni.

Non si tratta della mia importanza o di altro, si tratta dell'importanza della conoscenza della programmazione, che voi non avete. Se tu fossi all'università e ti comportassi così in classe, come minimo l'insegnante ti rimprovererebbe o ti caccerebbe. E' allora che gli avresti parlato del tuo ego... :)

Non hai conoscenze non perché sei un principiante ma perché sei ignorante... Quando qualcuno vi dirà ancora una volta che un EA è diverso da un indicatore, continuerete a dire il vostro "qual è la differenza". :)

Ho scritto: "L'indicatore apre i trade" e "Il bot ha bisogno di un timeframe per un trade". Nessuno risponderebbe nemmeno a una domanda del genere, perché manca di qualsiasi logica. Ma ho cercato di rispondere. Ho ricevuto molte accuse e insulti. È questo invece di "Grazie"...?
 
Nerd Trader su un server remoto. Ci servirebbe una presa, ma è ancora difficile per me.

Crittografare in magik. Ho descritto l'intera procedura di crittografia e decrittografia negli articoli.

 
Artyom Trishkin #:

Crittografare in magik. Ho descritto l'intera procedura di crittografia e decrittografia negli articoli.

Dammi il link, mi ci vogliono circa 30 minuti per trovarlo ogni volta) Buon approccio alla crittografia.

 
Valeriy Yastremskiy #:

Dammi il link, mi ci vogliono circa 30 minuti per trovarlo ogni volta) Buon approccio alla codifica.

Io non me lo ricordo :)

Anch'io cercherò 30 minuti ...

 
Nerd Trader #:

Questo non funziona perché il bot è in esecuzione su un server remoto, quindi scrivo il TF nel commento, che andrebbe bene, ma viene sovrascritto dal biglietto quando si chiude una parte del volume.

Fai un numero magico individuale per gli ordini su diversi orizzonti temporali. Questo numero non cambia quando si chiude parzialmente.

//+-----------------------------------------------------------------------------+
//|  Описание : Автоматическая генерация магического номера                     |
//|             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 #:

Fai un numero magico individuale per gli ordini su diversi orizzonti temporali. Questo numero non cambia quando è parzialmente chiuso.

E perché criptare il simbolo nel numero magico se è già leggibile dall'ordine/posizione? E perché questi valori per il SymNumber?

 
Volodymyr Zubov #:

Fai un numero magico individuale per gli ordini su diversi orizzonti temporali. Questo numero non cambia in caso di chiusura parziale.

Grazie per StringFind. Ma sarebbe molto più facile per me.

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

   GenerateMN = (int)(PMinuts+mn);

   return (int)(GenerateMN);
  }

E in seguito otterrei il simbolo dell'ordine usando OrderSymbol().

 

Ciao!

Se ricevo un segnale (per esempio Buy), devo aprire un ordine opposto (Sell) dopo che le condizioni del lotto sono soddisfatte.

Ho costruito il codice:

// Получим значение индикатора
   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();
     }

ma quando si verifica una condizione

(GetLotSize()>LotControl)

Ma in questo caso due ordini opposti sono aperti simultaneamente, come posso "aggiustarlo"?

Motivazione: