È possibile chiudere parzialmente la posizione dopo il target ATR?
9 risposte
Soglia
12 anni fa #112092
È possibile chiudere parzialmente la posizione dopo il target ATR?
0
Mark Fric
12 anni fa #124227
Sì, è possibile, ma è necessario definire tale regola da soli. Le uscite parziali non sono supportate dalla gestione standard degli ordini,
ma nulla vieta di creare una regola che controlli il profitto dell'ordine e chiuda una parte della posizione quando raggiunge un certo livello.
EA Wizard contiene funzioni per il controllo del profitto dell'ordine e della chiusura parziale.
Marchio
Architetto StrategyQuant
0
Soglia
12 anni fa #124262
Ho difficoltà a definirne le regole. Per il take profit è molto semplice da definire.
Per la chiusura parziale è molto diverso.
Stavo pensando che...
SE
La posizione di mercato è lunga
Prezzo &= Entrata+ ATR*1,5
ALLORA
Posizione di chiusura Parzialmente
SE
La posizione di mercato è corta
Prezzo &= Entrata - ATR*1.5
ALLORA
Posizione di chiusura Parzialmente
Forse puoi semplificare questo passaggio per me, Mark. Ho qualche difficoltà.
0
Mark Fric
12 anni fa #124264
Il codice che hai scritto è esattamente come potrebbe funzionare, che difficoltà hai?
Potresti postare qui la tua strategia (.sqw)? La controllerò e la correggerò.
Marchio
Architetto StrategyQuant
0
Soglia
12 anni fa #124272
Ah ok l'ho trovato. Non sapevo che ci fosse "OpenPrice". Stavo cercando "Enrty" o qualcosa del genere e ho pensato che forse non ero in grado di fare questa funzione. Ecco cosa ho ottenuto finora. Non è ancora completo.
0
Soglia
12 anni fa #124305
Ok, ho capito che funziona, ma forse puoi illuminarmi su come funziona la chiusura parziale % con le mie impostazioni ATR.
Ho separato le regole del post precedente in due gruppi di regole.
Nuovo problema che sto riscontrando: Chiusura parziale ripetuta per lo stesso ordine.
Esempio.
40% chiusura parziale dopo ATR(10)[1]*1+ OpenPrice
Dimensione della posizione = 0,1Lotto
Chiusura parziale= 0,04
Ma durante il backtesting MT4 continua a ripetere la chiusura parziale.
La dimensione della posizione è 0,1
Quindi chiude parzialmente lo 0,04
La dimensione della posizione è ora 0,06
Ora chiude parzialmente 0,02
Allora 0,01
0,01...
C'è un modo per impostarlo in modo che si chiuda parzialmente solo una volta per ordine?
0
stearno
12 anni fa #124336
Soglia,
Sì, esiste una soluzione semplice per farlo solo una volta.
1. Creare una nuova variabile nel parametro. Io ho chiamato la mia 'PartialOrder' (ordine parziale) - la chiamo di tipo int e le attribuisco il valore 0.
2. Andare alla scheda Regola ordine parziale
3. Aggiungete nell'istruzione THEN un'altra azione per assegnare un valore alla variabile PartialOrder. Assegnare 1.
4. Aggiungete una regola all'istruzione IF della scheda Regola ordine parziale. Aggiungere la condizione che la varialbe PartialOrder deve essere = 0 affinché la regola dell'ordine parziale venga eseguita.
5. Nella/e regola/e di inserimento ordini, aggiungere un'altra azione all'istruzione THEN. Assegnare a 0 la variabile PartialOrder.
In questo modo, quando si inserisce un ordine, l'interruttore dell'ordine parziale viene portato a 0. PartialOrder deve essere uguale a 0 prima che venga preso un ordine parziale dall'ordine. Poi, una volta fatto, porta l'interruttore variabile a 1, in modo da non eseguire di nuovo la regola fino a quando non si inserisce un'altra operazione.
Dovrete eseguire questa configurazione esatta per ogni ordine inserito (quindi se avete Long Entry 1, 2 e 3, dovrete eseguire questa operazione tre volte).
-Stearno
0
Soglia
12 anni fa #124385
Eccellente.
Grazie signore.
0
Soglia
12 anni fa #124412
Da un recente backtest del sistema su un campione di 14 anni su una sola coppia (funziona su molte) 😉
Grazie ancora.
0
stearno
12 anni fa #124502
Molto bello!
0
Stai visualizzando 9 risposte - da 1 a 9 (di 9 totali)