[ARCHIVIO]Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Non posso andare da nessuna parte senza di te - 5. - pagina 207
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Signori, per favore ditemi come codificare (probabilmente in una dichiarazione condizionale) una semplice idea
-se un'operazione è stata chiusa con uno stop loss
-aprire un altro trade al prezzo di stop loss
Grazie
1. Non si possono aprire ordini nella funzione init() (nello Strategy Tester questo funzionerà ancora, ma non nella demo).
2. Quando si chiudono gli ordini, si dovrebbe contare dalla fine all'inizio, e non viceversa, come nel tuo caso.
Grazie per la vostra risposta.
In questo caso l'operatore di loop è stato studiato nel tester, ecco perché gli ordini sono aperti in init() per semplificazione, questo non accade negli EA reali.
Cambiando l'ordine di selezione degli ordini, questi vengono effettivamente chiusi entro un tick (do il codice del programma e il report del log del tester qui sotto).
Sembra strano che MQL4 non mi permetta di cambiare l'ordine di lavoro con gli ordini. Se sapete perché, vi prego di avvisare, dato che secondo la logica di lavoro di un EA ho intenzione di chiudere gli ordini esattamente nell'ordine in cui sono stati aperti.
Sinceramente. Shurkin.
Non puoi aprire esattamente al prezzo di stop loss, ma puoi condizionare l'apertura nella stessa direzione o in quella opposta!
Ecco una chiamata di funzione da "Funzioni utili" di Kim, che potete mettere in una condizione:
isCloseLastPosByStop - Restituisce la bandiera per chiudere l'ultima posizione per stop
if(isCloseLastPosByStop() == 0) o ... == 1) e quello che volete ......
Potete trovare la funzione qui: https://www.mql5.com/ru/forum/131859
E mettetelo fuori dall'inizio!
E vi esorto, potete fare tutto da soli, con diligenza, precisione e pazienza, altrimenti non imparerete nulla dai suggerimenti!
La conoscenza si acquisisce solo con uno sforzo adeguato da parte vostra! Mettiti al lavoro quotidiano di investigazione! Buona fortuna!
Buona giornata.
Per favore, ditemi se ci sono situazioni in cui i TC possono cambiare o cancellare i commenti a un ordine?
Grazie mille.
Per favore, ditemi se ci sono situazioni in cui i TC possono cambiare o cancellare i commenti a un ordine...?
Commento nativo
e121220_3in1 01
Con aggiunta di DC dopo il rollover
e121220_3in1 01[swap]
Cioè, se cerchiamo un ordine con un commento, dobbiamo prima determinare la lunghezza della linea di commento nativa e poi controllare solo la prima parte del commento modificato nella lunghezza corrispondente. Oppure controlla se la stringa nativa è nel commento da controllare.
Shurkin:
Grazie per la risposta.
In questo caso il lavoro dell'operatore di loop è stato studiato esattamente nel tester, ecco perché gli ordini sono aperti in init() per semplificazione, questo non accade negli EA reali.
Cambiare l'ordine degli ordini porta effettivamente alla loro chiusura entro un tick (il codice del programma e il report del log del tester sono riportati di seguito).
Sembra strano che MQL4 non mi permetta di selezionare un ordine. Se ne conoscete il motivo, vi prego di avvisare, poiché la logica di lavoro dell'Expert Advisor suggerisce che gli ordini dovrebbero essere chiusi esattamente nell'ordine in cui sono stati aperti.
Sinceramente. Shurkin.
La logica è corretta - i numeri d'ordine degli ordini dovrebbero essere uguali ai numeri d'ordine. Una volta che un ordine viene chiuso, tutti gli altri saranno ricalcolati. Prova questa costruzione
Buona giornata.
Per favore, ditemi se ci sono situazioni in cui i TC possono cambiare o cancellare i commenti a un ordine?
Grazie mille.
Abbiamo sperimentato un cambio completo di commento su un ordine. Inoltre, la magia è talvolta azzerata durante le chiusure parziali (le chiusure parziali sono avviate dal server). Ora, c'è un consigliere separato, in loop per controllare quest'ultimo, che monitora gli ordini "alieni" e altre incongruenze, notificando tramite messaggi Push in modo tempestivo.
Si prega di consigliare come scrivere correttamente la condizione:
1.se l'ordine symbol = simbolo e l'ordine magik = 135
2.se non ci sono ordini pendenti BAYSTOP
3.se non ci sono ordini aperti BAY O (se ci sono) stoploss> prezzo aperto
4.se il prezzo è tra MA e c'è un frattale in alto
INSERIRE ORDINE BUYTOP IN SOSPESO
SCRITTO COSÌ:
NON FUNZIONA! DITEMI QUAL È L'ERRORE!
Per favore, consigliatemi cosa potrebbe causare il seguente problema.
C'è un indicatore che utilizza funzioni esterne. Il codice della libreria compilata si trova nella cartella librerie, descrittori - in include.
Connessione #include <lib_Zemckikh.mqh>. Durante la prima esecuzione dell'indicatore, tutte le funzioni della libreria funzionano normalmente, l'indicatore viene visualizzato sul grafico. Dopo un cambio di parametri (dopo un nuovo calcolo dell'indicatore) le funzioni di biblioteca non vengono chiamate, l'indicatore non viene visualizzato, non ci sono voci nella scheda "Esperti" dopo il cambio di parametri.
Se si esclude la connessione della libreria e si mettono le funzioni necessarie nel file indicatore (compilato direttamente con le funzioni), tutto funziona bene.
Non riesco a capire cosa c'è che non va. Non voglio inquinare il forum, non allego i codici. Se ne hai bisogno, te lo mando di persona.