[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Non potrei andare da nessuna parte senza di te - 2. - pagina 511

 
Kreol:

Ciao!

Alla ricerca di uno script, argomento creato qui https://forum.mql4.com/ru/42138 consigliato di contattare qui per aiuto.

Grazie in anticipo!


Siete stati avvisati - guardate qui, scavate il codebase - non dimenticate di condividere i vostri risultati.
 
Roman.:

Vi è stato detto di guardare qui, scavare il codebase - non dimenticate di condividere i vostri risultati.

Ho scritto che non ho trovato niente lì :(
 

Inoltre non è la stessa cosa, perché per aprire una posizione su un limite o su un mercato bisogna usare script diversi + bisogna trovare lo strumento stesso e aprire la sua finestra + non c'è la chiusura parziale delle posizioni.
 
Ti ho già detto l'indirizzo dove sarà fatto esattamente come vuoi tu, non lo ripeterò.
 
Top2n:
c'è qualcosa che non va qui!


Certo che non lo è:

bool TimeBars()
{
int prevtime = 0;
if (Time[0] == prevtime) return(0); // Бар прежний, а следовательно выходим
   prevtime = Time[0]; // Свежий бар, запоминаем время
}
C'è un azzeramento obbligatorio prima del confronto.
 
static int prevtime;
 
xrust:
Ti ho già detto l'indirizzo dove sarà fatto esattamente come vuoi tu, non te lo dirò di nuovo.

Sì, sì, ho capito... ma prima di darvi i miei soldi vorrei assicurarmi che lo script di cui ho bisogno non sia liberamente disponibile
 

Buon pomeriggio.

Ci sono 4 ordini, 2 vendite e 2 acquisti. I sigilli si creano, in senso figurato, quando il prezzo sale e si comprano quando scende. Le vendite vengono cancellate quando viene creato un acquisto e viceversa. Quando viene creato un biglietto, il 1° vendere o comprare viene memorizzato nella variabile pos. Tutti e 4 hanno lo stesso commento - "Aelit". Quindi, c'è un codice:

if (OrderSelect(pos, SELECT_BY_TICKET, MODE_TRADES))
    if (OrderComment() == "Aelit")
    {
    ...
    OrderModify(OrderTicket(), OrderOpenPrice(), NormalizeDouble(OrderOpenPrice()+0.0001, Digits), OrderTakeProfit(), 0);
    ...
    }

L'ordine è selezionato normalmente dal biglietto, ma molto spesso il confronto dei commenti fallisce. Per interesse, ho fatto un altro Alert(OrderComment()); e il log ha mostrato "Alert: Aelit[sl]". Che cos'è [sl]? È perché tutti gli ordini hanno lo stesso commento? Allora perché lo stesso [sl] quando ho fatto un commento che non corrispondeva agli altri per il test? Se si rimuove il controllo dei commenti, c'è un errore di ticket nel log per OrderModify. All'inizio pensavo che la condizione fosse stata raggiunta prima della creazione di qualsiasi ordine, ma no, in quel momento l'ordine è già presente, e il biglietto è lo stesso in caso di condizione che si innesca e non si innesca. Come faccio a capirlo?

 
Potete per favore consigliarmi se è possibile scrivere del testo in mql4 in un file, ad esempio *.txt, e poi recuperare questi dati per il trading. L'idea è che l'EA imparerebbe a fare trading da solo, quando il prezzo cambia di >100*Point per paio di barre, l'EA memorizzerebbe questi valori e poi proverebbe ad usarli (valore dell'indicatore +/- n% per aprire un ordine). Questo potrebbe anche essere implementato nell'EA, ma dopo aver chiuso MetaTrader tutti i valori variabili sembrano essere azzerati