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

 
Mihail Matkovskij:

Quindi un profitto viene sommato solo se è positivo. Se è negativo, è una perdita. Se vogliamo conoscere il profitto totale, si sommano tutti i profitti, compresi quelli negativi. E questa funzione cerca di scoprire il profitto dell'ultimo ordine, lo fa in modo errato e si chiama lastloss. Non lo capite? Oh, caro... Sono esausto...

Non sto parlando della correttezza della sua funzione... l'uomo non sa come usare la ricerca...

Ma per quanto riguarda lo scambio, la metterò in un altro modo...

Cerca l'ultimo trade perdente e somma OrderProfit, ma se lo swap era positivo, la perdita è minore?

 
MakarFX:

non c'è in void OnTick

      if(!RefreshRates())
         return;
      TimeBar=time_0;
      my_TP = m_symbol.Ask() + ExtTakeProfit*Point();
      my_SL = m_symbol.Ask() - ExtStopLoss*Point();
      my_lot = Lots;
   if (PositionsTotal()<=2)
     {
      OPENORDER("Buy");
     }
      CLOSEORDER("Sell");
         }  
 }
   bool   condition3 = (close1 < EMA_TREND[0]);
   bool   condition4 = (isCrossed==2);
   
      if(condition3 && condition4 && pos_total==0 )
         {
      if(!RefreshRates())
         return;
      TimeBar=time_0;
      my_TP  = m_symbol.Bid() - ExtTakeProfit*Point();
      my_SL  = m_symbol.Bid() + ExtStopLoss*Point();

      my_lot= Lots;
   if (PositionsTotal()<=2)
     {
      OPENORDER("Sell");
     }
      CLOSEORDER("Buy");


Giusto? Nessun cambiamento neanche qui.

 
Valeriy Yastremskiy:
"E perché aggiungete swap e commissioni ai profitti? E quando lo fai.

può anche essere negativo...

E di che tipo di profitto totale stiamo parlando se si elaborano solo 1 o pochi ordini corrispondenti, ma non tutti?".


C'era qualcosa di molto confuso tra di loro. Era tutto giusto nell'osservazione, non si tratta di aggiungere e sottrarre numeri negativi)

Non mi piacciono nemmeno le risposte Seek, è lì)

Sono contento che ci capiamo)
 
Eugen8519:


come questo? anche questo è lo stesso.

Sistemate anche questo nell'OnTick alla fine

   if (PositionsTotal()<=2)
     {
      TrailingOrder();
     }
   Trailing();
//---
   return;
    }
 }
 
MakarFX:

anche sistemarlo nell'OnTick alla fine


l'ho cambiato, nessun cambiamento, è pazzesco, sto lavorando su questa funzione da un paio di giorni, non funziona niente.

 
Eugen8519:


L'ho cambiato, nessun cambiamento, è pazzesco, sto lavorando su questa funzione da un paio di giorni, non funziona niente.

Dovresti caricare l'intero codice o allegare un file, lo guarderò domani.

Non sono bravo con mql5 ma cercherò di aiutare)

 
MakarFX:

Pubblica tutto il codice o allega un file, lo guarderò domani.

Non sono bravo con mql5, ma cercherò di aiutare)

La funzione sembra essere semplice, ma sembra essere ostacolata da qualcosa.

Penso che ci sia qualcosa di sbagliato in void TrailingOrder()

File:
EA.mq5  36 kb
 
Eugen8519:

Per favore controllate questa funzione, sembra essere semplice, ma qualcosa interferisce con essa.

Penso che ci sia qualcosa di sbagliato in void TrailingOrder()

Provatelo nel tester.

Сделки
Время   Сделка  Символ  Тип     Направление     Объем   Цена    Ордер   Комиссия        Своп    Прибыль         Баланс  Комментарий
2021.07.01 00:00:00     1               balance                                 0.00    0.00    10 000.00       10 000.00       
2021.07.01 23:45:00     2       EURUSD  sell    in      1       1.18478 2       0.00    0.00    0.00    10 000.00       
2021.07.02 10:00:40     3       EURUSD  buy     out     1       1.18328 3       0.00    -1.00   150.00  10 149.00       tp 1.18328
2021.07.02 21:00:00     4       EURUSD  buy     in      1       1.18675 4       0.00    0.00    0.00    10 149.00       
2021.07.02 22:22:00     5       EURUSD  sell    out     1       1.18681 5       0.00    0.00    6.00    10 155.00       
2021.07.06 08:15:00     6       EURUSD  buy     in      1       1.18778 6       0.00    0.00    0.00    10 155.00       
2021.07.06 09:08:40     7       EURUSD  sell    out     1       1.18928 7       0.00    0.00    150.00  10 305.00       tp 1.18928
2021.07.06 15:00:00     8       EURUSD  sell    in      1       1.18403 8       0.00    0.00    0.00    10 305.00       
2021.07.06 15:31:40     9       EURUSD  buy     out     1       1.18453 9       0.00    0.00    -50.00  10 255.00       sl 1.18453
2021.07.07 16:00:00     10      EURUSD  sell    in      1       1.18159 10      0.00    0.00    0.00    10 255.00       
2021.07.07 16:42:40     11      EURUSD  buy     out     1       1.18009 11      0.00    0.00    150.00  10 405.00       tp 1.18009
2021.07.08 12:45:00     12      EURUSD  buy     in      1       1.18278 12      0.00    0.00    0.00    10 405.00       
2021.07.08 14:00:20     13      EURUSD  sell    out     1       1.18428 13      0.00    0.00    150.00  10 555.00       tp 1.18428
2021.07.09 15:30:00     14      EURUSD  buy     in      1       1.18611 14      0.00    0.00    0.00    10 555.00       
2021.07.09 18:30:40     15      EURUSD  sell    out     1       1.18561 15      0.00    0.00    -50.00  10 505.00       sl 1.18561
2021.07.13 04:30:00     16      EURUSD  buy     in      1       1.18637 16      0.00    0.00    0.00    10 505.00       
2021.07.13 08:57:20     17      EURUSD  sell    out     1       1.18587 17      0.00    0.00    -50.00  10 455.00       sl 1.18587
2021.07.13 13:00:00     18      EURUSD  sell    in      1       1.18426 18      0.00    0.00    0.00    10 455.00       
2021.07.13 13:53:40     19      EURUSD  buy     out     1       1.18476 19      0.00    0.00    -50.00  10 405.00       sl 1.18476
2021.07.15 17:00:00     20      EURUSD  sell    in      1       1.18165 20      0.00    0.00    0.00    10 405.00       
2021.07.15 17:05:40     21      EURUSD  buy     out     1       1.18215 21      0.00    0.00    -50.00  10 355.00       sl 1.18215
2021.07.19 05:30:00     22      EURUSD  sell    in      1       1.18014 22      0.00    0.00    0.00    10 355.00       
2021.07.19 07:11:40     23      EURUSD  buy     out     1       1.18064 23      0.00    0.00    -50.00  10 305.00       sl 1.18064
2021.07.20 05:00:00     24      EURUSD  sell    in      1       1.17972 24      0.00    0.00    0.00    10 305.00       
2021.07.20 05:31:20     25      EURUSD  buy     out     1       1.18022 25      0.00    0.00    -50.00  10 255.00       sl 1.18022
2021.07.21 07:30:00     26      EURUSD  sell    in      1       1.17727 26      0.00    0.00    0.00    10 255.00       
2021.07.21 10:09:40     27      EURUSD  buy     out     1       1.17577 27      0.00    0.00    150.00  10 405.00       tp 1.17577
2021.07.21 18:45:00     28      EURUSD  buy     in      1       1.17990 28      0.00    0.00    0.00    10 405.00       
2021.07.21 19:09:40     29      EURUSD  sell    out     1       1.17940 29      0.00    0.00    -50.00  10 355.00       sl 1.17940
2021.07.22 17:15:00     30      EURUSD  buy     in      1       1.17929 30      0.00    0.00    0.00    10 355.00       
2021.07.22 17:40:40     31      EURUSD  sell    out     1       1.17879 31      0.00    0.00    -50.00  10 305.00       sl 1.17879
2021.07.22 19:45:00     32      EURUSD  sell    in      1       1.17594 32      0.00    0.00    0.00    10 305.00       
2021.07.22 20:01:40     33      EURUSD  buy     out     1       1.17644 33      0.00    0.00    -50.00  10 255.00       sl 1.17644
2021.07.27 11:00:00     34      EURUSD  sell    in      1       1.17829 34      0.00    0.00    0.00    10 255.00       
2021.07.27 13:39:40     35      EURUSD  buy     out     1       1.17879 35      0.00    0.00    -50.00  10 205.00       sl 1.17879
2021.07.27 19:00:00     36      EURUSD  buy     in      1       1.18304 36      0.00    0.00    0.00    10 205.00       
2021.07.27 21:52:40     37      EURUSD  sell    out     1       1.18254 37      0.00    0.00    -50.00  10 155.00       sl 1.18254
2021.07.29 01:00:00     38      EURUSD  buy     in      1       1.18443 38      0.00    0.00    0.00    10 155.00       
2021.07.29 08:42:40     39      EURUSD  sell    out     1       1.18593 39      0.00    0.00    150.00  10 305.00       tp 1.18593
2021.07.30 13:15:00     40      EURUSD  buy     in      1       1.18859 40      0.00    0.00    0.00    10 305.00       
2021.07.30 13:50:40     41      EURUSD  sell    out     1       1.19009 41      0.00    0.00    150.00  10 455.00       tp 1.19009
2021.07.30 19:45:00     42      EURUSD  sell    in      1       1.18607 42      0.00    0.00    0.00    10 455.00       
2021.07.30 22:22:00     43      EURUSD  buy     out     1       1.18576 43      0.00    0.00    31.00   10 486.00       
                                                                                0.00    -1.00   487.00  10 486.00       
File:
EA.mq5  36 kb
 
MakarFX:

Non dirò nulla sulla correttezza della sua funzione... l'uomo non sa come usare il motore di ricerca

Ma per quanto riguarda lo scambio, lascia che la metta in un altro modo...

cerca l'ultimo trade perdente e somma OrderProfit, ma se lo swap era positivo, la perdita è minore?

Beh, ovviamente si riduce e il profitto aumenta. :) Ma ti senti almeno? Quale scambio positivo? Dove hai visto una cosa del genere?

 
Mihail Matkovskij:

Certo, sta diventando più piccolo e i profitti sono più grandi. :) Ma ti senti almeno? Quale scambio positivo? Dove l'hai visto?!

L'ho fatto. Più di una volta. Ho anche voluto costruire sui cambiamenti in tali scambi