Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 6. - pagina 1125
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
Ho già ottenuto, e su questo grazie, prima di qualsiasi ordine commerciale già prescritto funzione di gestione degli errori ovunque, ma ora sono bloccato in un ciclo e come frenare l'EA, se ci saranno errori solo a causa del mio errore, e dove esattamente a prescrivere. Cioè ho provato ad aprire un ordine, ma si è verificato un errore, come ottenerlo? Per esempio OrderSend(....); ha fatto una transazione, come faccio a sapere se ha funzionato con successo?
Puoi aprire l'aiuto della funzione e vedere cosa restituisce? E _LastError?
Nello specifico OrderSend restituisce un biglietto d'ordine o -1. Indovina in quale caso sarà -1 per conto tuo ;)
Puoi aprire la guida della funzione e vedere cosa restituisce? E _LastError?
Nello specifico OrderSend restituisce un biglietto d'ordine o -1. Indovina in quale caso sarà -1 tu stesso ;)
Sto leggendo questo da 10 minuti :)
Qui come esempio è abbastanza adatto
Ho già iniziato a lavorare sui miei codici di errore, grazie :) E ho quasi finito il mio Expert Advisor su come rallentarlo)
In questo esempio, non riesco a trovare il valore di"Slippage" è nell'OrderSend, potrebbe non essere così significativo o obbligatorio, mi chiedo!
E ho già iniziato a lavorare sui miei codici di errore, grazie :) E ho quasi finito il mio EA su come rallentarlo)
In questo esempio, non riesco a trovare il valore di"Slippage" è in OrderSend, potrebbe non essere così significativo o obbligatorio, mi chiedo!
E questo è per catturare il codice 135 o 129 e aumentare il valore di slittamento per il prossimo tentativo. Oppure, se l'aumento dello slittamento non sembra allettante, basta contare un certo numero di secondi fino al prossimo tentativo. Inoltre, tieni d'occhio lo spread, se lo spread è aumentato in questo momento, aspetta che diminuisca e riprova. Inoltre, è auspicabile non usare Sleep(), certamente semplifica la codifica e non porta molto danno, quando si iberna per mezzo secondo o un secondo, ma se l'Expert Advisor è un Pipsier veloce, per il quale ogni millisecondo è importante, o una pausa in decine di secondi è necessaria, è meglio non usare sleep, durante lo sleep l'Expert Advisor è paralizzato e non può solo fare trading, ma anche monitorare l'ambiente di trading o eseguire altri calcoli, non risponde alle azioni dell'utente, ecc.
Potete fissare l'ora attuale, contare alla rovescia il numero di secondi (o millisecondi) richiesto e poi agire.
E ho già iniziato a lavorare sui miei codici di errore, grazie :) E ho quasi finito il mio EA su come rallentarlo)
In questo esempio, non riesco a trovare il valore di"Slippage" è in OrderSend, potrebbe non essere così significativo o obbligatorio, mi chiedo!
Oggi loslippage non è più così rilevante come una volta ed è di solito usato su conti con spread fisso, ma ci sono solo pochi conti di questo tipo e solo 5-7 persone fanno trading su di essi. Se lo spread è fluttuante, non c'èSlippage, è meglio monitorare lo spread stesso, e se è troppo ampio, allora astenersi dall'entrare, ma di nuovo, tutto dipende dalla strategia, quanto sia critico uno spread ampio.
Stronzate...
Su ECN molto popolari lo slippage sulle notizie è mastodontico. A volte centinaia di pip (5ozn). Oppure continuano a tormentare gli ordini per un minuto intero, dicendo "nuovo prezzo", "nessun prezzo", ecc.
Questo è per catturare il codice 135 o 129 e aumentare il valore di slittamento per il prossimo tentativo. Oppure, se l'aumento dello slittamento non è attraente, basta contare un certo numero di secondi fino al prossimo tentativo. Inoltre, tieni d'occhio lo spread, se lo spread è aumentato in questo momento, aspetta che diminuisca e riprova. Inoltre, è auspicabile non usare Sleep(), questo, naturalmente, semplifica la scrittura del codice e non causa danni particolari, quando si iberna per mezzo secondo o un secondo, ma se l'Expert Advisor è un Pipsier veloce, per il quale ogni millisecondo è importante, o è richiesta una pausa di decine di secondi, è meglio non usare sleep, durante lo sleep l'Expert Advisor è paralizzato e non può solo fare trading, ma anche monitorare l'ambiente di trading o eseguire altri calcoli, non risponde alle azioni dell'utente, ecc.
Potete fissare l'ora attuale, contare alla rovescia il numero di secondi (o millisecondi) e poi agire.
Ho già iniziato a cercare i codici di errore, grazie :) E ho quasi finito come frenare il mio Expert Advisor)
In questo esempio, non riesco a trovare il valore di"Slippage" è nell'OrderSend, potrebbe non essere così significativo o obbligatorio, mi chiedo!
Durante l'ibernazione del comando Sleep, l'EA è effettivamente paralizzata. Anche nel caso di un solo terminale, è necessario fornire il lavoro di venti thread diversi, cioè lasciare che ognuno di essi occupi il tempo della CPU. Almeno per visualizzare qualcosa sullo schermo, per non parlare del compito cruciale per i pipser millisecondi di accettare i tick in arrivo. In realtà ci sono decine di altri servizi del sistema operativo che vogliono anche lavorare, cioè occupare il processore con le proprie necessità. Se il comando Sleep non lo fa, il thread scheduler del sistema operativo lo farà forzatamente, ma secondo le proprie considerazioni a chi deve essere dato il tempo. Si può anche fare affidamento su di esso e caricare il processore quasi al 100% tutto il tempo con solo questo consigliere. Ma difficilmente si adatterà a qualcuno. Se il programmatore non pianifica l'allocazione delle risorse del processore, nella maggior parte dei casi, l'approccio implementato in MQL dove l'Expert Advisor riceve la CPU al tick per un simbolo e dopo l'elaborazione di questo arrivo, l'Expert Advisor si "paralizza" e non prende la CPU fino al tick successivo.
Il parametro Slippage in OrderSend (da non confondere con lo slippage reale in caso di modalità di esecuzione dell'ordine "Market execution", dal mercato) ha senso impostare solo nella modalità "Instant execution", esecuzione immediata, quando l'ordine viene eseguito al prezzo dichiarato o rifiutato, cioè viene respinto. La deviazione massima consentita del prezzo di esecuzione dal prezzo indicato nell'ordine può essere impostata come non zero. Nella modalità "Esecuzione sul mercato", questo parametro non significa nulla, in questo caso il prezzo di esecuzione è stabilito dal centro di negoziazione, la deviazione dal prezzo indicato nell'ordine non è limitata in alcun modo.
Stronzate...
Su ECN molto popolari lo slippage sulle notizie è mastodontico. A volte centinaia di pip (5ozn). Oppure continuano a tormentare gli ordini per un minuto intero, dicendo "nuovo prezzo", "nessun prezzo", ecc.
Есть условие для открытия ордера BUY. Открывается ордер, как сделать переход к SELL условию после закрытия BUY ордера?
if(High[1]-Close[1]>=NormalizeDouble(xbs1*_Point,_Digits))
{
int b_tik=OrderSend(_Symbol,OP_BUY,Lots,Ask,Slip,Low[2]-sl,High[1]+ tp,"",Magic,0,clrBlue)==true; //открытие ордера
GlobalVariableSet("B_order",0); // Больше не ищем вход Buy
//-----?????
GlobalVariableSet("S_order",1); // Переходим к поиску Sell
return;
}