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

 
Konstantin Nikitin:
Alexey Viktorov:

Grazie, ma non lo capisco nemmeno io. Non sono un programmatore(

Se non è troppo disturbo, puoi farmi un esempio?

 
Ho capito bene?
index1=iBarShift(Symbol(), period01, time[i], false);
handle_ma1=iMA(Symbol(), period01, 5, 0, MethodMa, PriceMa)
CopyBuffer(handle_ma1,0,0,count,BufferMA1);
ma_buffer_slow[i]=BufferMA1[index1-1];
ma_buffer_fast[i]=BufferMA1[index1-5];
 
MakarFX:

Grazie, ma non lo capisco nemmeno io. Non sono un programmatore(

Se non è troppo disturbo, potrebbe farmi un esempio?

#property strict

input ENUM_TIMEFRAMES    MAInpTimeFrame      = PERIOD_CURRENT;   // MA: TimeFram
input int                MAInpPeriodFast     = 13;               // MA: Period Fast
input int                MAInpPeriodSlow     = 25;               // MA: Period Slow
input ENUM_MA_METHOD     MAInpMethod         = MODE_SMMA;        // MA: Method
input ENUM_APPLIED_PRICE MAInpAppliedPrice   = PRICE_CLOSE;      // MA: Applied price

int       ExtHandleFast, ExtHandleSlow;
double    BufferFast[],  BufferSlow[];
//+------------------------------------------------------------------+
int OnInit(void)
{
     ArraySetAsSeries(BufferFast, true);
     ArraySetAsSeries(BufferSlow, true);
     ExtHandleFast = iMA(_Symbol, MAInpTimeFrame, MAInpPeriodFast, 0, MAInpMethod, MAInpAppliedPrice);
     ExtHandleSlow = iMA(_Symbol, MAInpTimeFrame, MAInpPeriodSlow, 0, MAInpMethod, MAInpAppliedPrice);
     if( ExtHandleFast == INVALID_HANDLE ||
         ExtHandleSlow == INVALID_HANDLE )
     {
          printf("Error creating \"MA\" indicator");
          ExpertRemove();
     }
     return(INIT_SUCCEEDED);
}

void OnTick(void)
{
     ZeroMemory(BufferFast);
     ZeroMemory(BufferSlow);
     
     if( CopyBuffer( ExtHandleFast, 0, 0, 2, BufferFast ) != 2 ||
         CopyBuffer( ExtHandleSlow, 0, 0, 2, BufferSlow ) != 2 )
          return;
     Comment( "BufferFast[0]: ", NormalizeDouble(BufferFast[0], _Digits), "\nBufferSlow[0]: ", NormalizeDouble(BufferSlow[0], _Digits),
              "\n=================\n",
              "BufferFast[1]: ", NormalizeDouble(BufferFast[1], _Digits), "\nBufferSlow[1]: ", NormalizeDouble(BufferSlow[1], _Digits) );
}
 
Konstantin Nikitin:
Grazie mille...questo ha più senso)))
 

Saluti. Puoi darmi un suggerimento?

Quando mi accorgo che il broker ha chiuso le posizioni aperte e le ha riaperte. Non riesco a trovare una descrizione di questa procedura.

Come si chiama? Quanto spesso viene fatto?

 
Andrey Sokolov:

Saluti. Puoi darmi un suggerimento?

Quando mi imbatto in un broker che chiude posizioni aperte e le riapre. Non riesco a trovare una descrizione di questa procedura.

Come si chiama? Quanto spesso viene fatto?

Di solito le banche lo fanno alle 00:00.


Per esempio, c'è una transazione per comprare 100.000 EUR/USD con una data di valuta del 14.08.2019 quando il regolamento effettivo è dovuto, e il trader non ha chiuso la transazione durante il giorno. Al fine di posticipare la data di valuta (regolamento completo), alla fine della giornata la Banca chiude questa transazione al tasso corrente con data di valuta 14.08.2019, e conclude un acquisto simile con nuova data di valuta 15.08.2019, tenendo conto dei punti swap che sono presenti al cambio internazionale in quel giorno.
 
Andrey Sokolov:

Saluti. Puoi darmi un suggerimento?

Quando mi accorgo che il broker ha chiuso le posizioni aperte e le ha riaperte. Non riesco a trovare una descrizione di questa procedura.

Come si chiama? Quanto spesso viene fatto?

Roll Over

 
Saluti. Diciamo che c'è una situazione: il programma è stato decompilato. Nel codice, alla fine, è stata messa una macro __LINE__ che restituisce il numero di una linea da cui viene chiamata. Possiamo aspettarci che il numero di linee nel codice decompilato cambi e che la stessa macro restituisca una linea diversa nel codice hackerato appena compilato? Sono interessato a questo come un possibile metodo di protezione contro la decompilazione. Questo numero di linea sarà controllato dal server tramite richiesta web. All'inizio ho pensato di leggere la somma md5 del file .ex4/.ex5, ma non so come farlo senza dll.
 
Dmitri Custurov:
Saluti. Diciamo che c'è una situazione: il programma è stato decompilato. Nel codice, alla fine, è stata messa una macro __LINE__ che restituisce il numero di una linea da cui viene chiamata. Possiamo aspettarci che il numero di linee nel codice decompilato cambi e che la stessa macro restituisca una linea diversa nel codice hackerato appena compilato? Sono interessato a questo come un possibile metodo di protezione contro la decompilazione. Questo numero di linea sarà controllato dal server tramite richiesta web. All'inizio ho pensato di leggere la somma md5 del file .ex4/.ex5, ma non so come farlo senza dll.

Se il vostro codice è stato decompilato, nulla vi impedisce di rimuovere la macro e non ci saranno problemi. Ma leggete di più sulle capacità di decompilazione. Anche se supponiamo che sia possibile, costa quanto una dozzina di EA. Ma mi sembra che questa sia una truffa. Ordina e paga la decompilazione e non vedrai mai più il sito con questa offerta.

 

Saluti. Potete consigliarmi per favore?

È possibile impostare il colore delle linee (non delle frecce) degli ordini in mt4?