Buongiorno,
essendo agli inizi volevo creare un TS semi automatico, nel senso di lanciarlo quando vedo che le condizioni con le quali opero sono presenti nel grafico ( ancora non riesco a gestire in modo automatico con un sistema il mio modo di operare).
Volevo sapere se era possibile lanciare un TS e far in modo che ad una certa condizione produca un solo ordine e non vada a immeterne un altro se dopo un’ora si riverifica la condizione,
in poche parole finchè quell’ordine è in essere non deve immettere nuovi ordini anche se si riverificano le condizioni ( utile soprattutto con TF sotto i 15 min).
Grazie in anticipo.
Buon Lavoro!
Esempio usando una variabile (OneTrade) che funziona da semaforo, se è 1 si può operare, altrimenti no. Ovbviamente ho messo una condizione estremamente semplice, verifica solo che una candela sia rialzista o ribassista, tu metterai quelle che desideri:
DEFPARAM CumulateOrders = False
ONCE OneTrade = 1 //Inizializzazione variabile
IF OnMarket THEN
OneTrade = 0 //Se già a mercato, impedire ulteriori operazioni
ENDIF
// Long
IF Close > Open AND OneTrade THEN //Verificare proprie condizioni + OneTrade
BUY 1 CONTRACT AT MARKET
ENDIF
// Short
IF Close < Open AND OneTrade THEN //Verificare proprie condizioni + OneTrade
SELLSHORT 1 CONTRACT AT MARKET
ENDIF
// Target & Stop Loss
SET STOP pLOSS 10
SET TARGET pPROFIT 20
Buon trading!
salve Sig.Roberto Gozzi , vorrei poterle girare ( e-mail ) sia un mio indicatore “PRT” che un foglio excel dove spiego l’applicazione di tale indicatore in un eventuale Sistema Automatico….
spero li possa trovare interessanti ….
A presto…
Buonasera,
ho provato a fare un TS come suggerito ma in Backtasting viene fatto un ordine solo una volta appena si realizza la condizione e poi non fa ordini fino alla fine del periodo.
Dove sbaglio ?
Grazie
// Definizione dei parametri del codice
DEFPARAM CumulateOrders = False // Posizioni cumulate disattivate
// Il sistema cancellerà tutti gli ordini in attesa e chiuderà tutte le posizioni a 0:00. Dopo l'orario "Flat Before" non saranno piazzati nuovi ordini o posizioni.
DEFPARAM FLATBEFORE = 073000
// Cancellare tutti gli ordini in attesa e chiudere tutte le posizioni all'orario "Flat After"
DEFPARAM FLATAFTER = 173000
ONCE OneTrade = 1 //Inizializzazione variabile
IF OnMarket THEN
OneTrade = 0 //Se già a mercato, impedire ulteriori operazioni
ENDIF
// Condizioni per entrare su posizioni long
indicator1 = CALL "My Indicator"
c1 = (close CROSSES OVER indicator1)
IF c1 AND OneTrade THEN
BUY 3 CONTRACT AT MARKET
ENDIF
// Condizioni per uscire da posizioni long
indicator2 = CALL "My indicator"
c2 = (close CROSSES UNDER indicator2)
IF c2 THEN
SELL AT MARKET
ENDIF
// Condizioni per entrare su posizioni short
indicator3 = CALL "My Indicator"
c3 = (close CROSSES UNDER indicator3)
IF c3 AND OneTrade THEN
SELLSHORT 3 CONTRACT AT MARKET
ENDIF
// Condizioni per uscire da posizioni short
indicator4 = CALL "My Indicator"
c4 = (close CROSSES OVER indicator4)
IF c4 THEN
EXITSHORT AT MARKET
ENDIF
// Stop e target
SET STOP pLOSS 30
SET TARGET pPROFIT 200
Hai chiesto che non facesse altri ordini anche al verificarsi delle condizioni, n0?
No volevo che fino a che non chiudeva il trade non ne aprisse altri anche al verificarsi nuovamente della condizione di entrata.
Nel dettaglio condizione di entrata trade uscita su altra condizione poi si riparte, non voglio che il sistema si riverifichi con un trade aperto la condizione e rifaccia un altro ordine.
non so se mi sono spiegato.
Grazie!
Ah… era sufficiente evitare più posizioni aperte contemporaneamente!
Bene, in tal caso è semplicissimo, lascia perdere la mia strategia ed inserisci all’inizio della tua questa semplice riga:
DEFPARAM CumulateOrders = False
che impedisce di avere più di un trade aperto.