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
Sai che stavo pensando a quello che ti ho detto prima
Se è un acquisto:
SL = Bid - StopLoss* Point
TP = Bid + TakeProfit* Point
Se è una vendita:
SL = Ask + StopLoss* Point;
TP = Ask - TakeProfit* Point;
Ho sempre fatto in questo modo perché è così che si fa negli esempi del libro MQL4, ma ora sto pensando che non sembra corretto, sicuramente se apri sul prezzo Ask vuoi prendere profitto a quel prezzo + il tuo importo TP, e vuoi fermarti a quel prezzo - il tuo importo SL?
In altre parole, il modo in cui l'hai fatto sembra essere corretto o c'è qualcosa che mi sfugge?
1) Sì, questo metodo funziona! C'è un modo per aggirare questo problema? Odio il pensiero del caso peggiore in cui l'ordine iniziale entra ma la modifica non avviene (la connessione muore, si verifica un errore, ecc ecc)
Bella domanda! Non ho MAI visto nessuno con un work around per questo.
Chiedi gentilmente al tuo broker di questo "caso peggiore".
1) Sì, questo metodo funziona! C'è un modo per aggirare questo problema? Odio il pensiero del caso peggiore in cui l'ordine iniziale entra ma la modifica non avviene (la connessione muore, si verifica un errore, ecc ecc)
Nel mio codice se l'OrderModify fallisce viene riprovato più volte, se i tentativi falliscono allora l'ordine viene chiuso, se l'OrderClose fallisce viene riprovato, se i tentativi falliscono c'è un'altra funzione che controlla tutti i trade, rileverà l'ordine senza SL o TP impostato e cercherà di chiuderlo. Tutti questi fallimenti genereranno errori, questi errori sono segnalati sullo schermo e via email, l'email genererà anche un avviso spinto sul mio cellulare.
C'è un'altra modalità di errore che non ho ancora gestito, cioè una perdita di connettività a Internet subito dopo che l'ordine è stato piazzato e prima che venga modificato. Ho un'idea per gestire questo, ma non ho le competenze di codifica PHP necessarie.
Ho contattato il mio broker, sono stati abbastanza inutili in quanto non offrono alcun aiuto di programmazione. Praticamente tutto quello che il rappresentante sapeva era come applicare un EA al grafico.
È piuttosto strano che questo problema abbia iniziato ad accadere solo ora, in passato funzionava perfettamente bene. Mi chiedo cosa l'abbia causato...
Grazie per il vostro aiuto ragazzi.
Credo che ci lavorerò intorno.
Nel mio codice se l'OrderModify fallisce viene riprovato diverse volte, se i tentativi falliscono allora l'ordine viene chiuso, se l'OrderClose fallisce viene riprovato, se i tentativi falliscono c'è un'altra funzione che controlla tutti i trade, rileverà l'ordine senza SL o TP impostato e cercherà di chiuderlo. Tutti questi fallimenti genereranno errori, questi errori sono segnalati sullo schermo e via email, l'email genererà anche un avviso spinto sul mio cellulare.
C'è un'altra modalità di errore che non ho ancora gestito, cioè una perdita di connettività a Internet subito dopo che l'ordine è stato piazzato e prima che venga modificato. Ho un'idea per gestire questo, ma non ho le competenze di codifica PHP necessarie.
Raptor, se non ti dispiace... come pensavi di controllare la connettività via PHP?
C'è un'altra modalità di fallimento che non ho ancora gestito, cioè una perdita di connettività a Internet subito dopo che l'ordine è stato piazzato e prima che venga modificato. Ho un'idea per gestire questo, ma non ho le competenze di codifica PHP necessarie.
Il mio approccio è quello di segnalare solo l'errore e tornare indietro. Al prossimo tick, al riavvio, alla riconnessione, il ciclo orderSelect di EA troverà l'ordine aperto e quindi imposterà gli stop.
Il problema più grande è l'orderSend che non restituisce alcun risultato. L'ordine può essere aperto o meno. Quando avrai il prossimo tick allora lo saprai.