Hai ragione…non avevo ben capito.
Quindi se voglio che TP e SL non siano operativi nelle ore notturne (fra le 21 di sera e le 8 di mattina) questo codice è corretto?
IF TIME >=080001 AND TIME <=210000 THEN
SET STOP %LOSS 0.5
SET TARGET %PROFIT 0.1
ENDIF
IF TIME >=210001 AND TIME <=080000 THEN
SET TARGET %PROFIT 0
SET STOP %LOSS 0
ENDIF
IF TIME >=080001 AND TIME <=210000 THEN
SET STOP %LOSS 0.5
SET TARGET %PROFIT 0.1
ELSE
SET TARGET %PROFIT 0
SET STOP %LOSS 0
ENDIF
Come l’hai scritto tu il secondo IF…ENDIF non verrebbe mai eseguito perché un numero non può essere > 21 e < 8 contemporaneamente!
Credo di aver capito….
Grazie ancora per la pazienza.
MF
Non preoccuparti, quando hai domande o dubbi di qualunque genere scrivi pure, utilizzando i vari forum di supporto: ProBuilder per gli indicatori, ProScreener per gli screener di mercato, ProOrder per le strategie automatizzate, ecc..
IF TIME >=080001 AND TIME <=210000 THEN
SET STOP %LOSS 0.5
SET TARGET %PROFIT 0.1
ELSE
SET TARGET %PROFIT 0
SET STOP %LOSS 0
ENDIF
——–
ancora non mi cancella gli ordini TP e SL “notturni”…..non capisco perchè…
Per scrivere il codice , utilizza il pulsante <> “insert PRT code”, per rendere il codice più leggibile. Grazie.
Prova a togliere, solo alle righe 5 e 6, il simbolo “%”, lasciando solo PROFIT 0 e LOSS 0.
Ok, cambio e poi vediamo in notturna se funziona….
Grazie!!
Niente da fare…stanotte avrebbe dovuto levare il take profit e lasciare la posizione aperta ma invece è scattato il take ed ha chiuso la posizione. Avrei voluto mantenerla aperta fino a stamattina e da li reinserire il take (che avrebbe prodotto maggiori profitti).
In paper trading rimane aperta la posizione ma in reale viene chiusa sul take o sul profit… Devo trovare il comando che mi cancelli gli ordini take/stop da IG.
Ho trovato questa risposta di Nicolas in merito ad annullare gli SL e TP https://www.prorealcode.com/topic/set-value-at-zero-weird-results/page/2/#post-82853.
Sembra che in effetti ci sia un problema e che sarà risolto quando verrà rilasciato il nuovo “motore” della piattaforma, probabilmete appena sarà finito il beta test del sistema MTF (Multiple Time Frame) che non è ancora stato rilasciato ufficialmente, ma solo per il demo.
Grazie per la segnalazione. Ci studio su e spero risolvano….
Ciao
MF
Una soluzione sarebbe quella di far disattivare il TS in automatico ad una determinata ora e gestire eventuali operazioni aperte manualmente.
Il TS dovrebbe disattivarsi annullando gli ordini pendenti di TP e SL: vi è un “comando” da inserire nel linguaggio del TS che lo disattivi ad una determinata ora?
Grazie
MF
Metti un target e uno Stop alti Esempio 10%
IF time >= 210000 AND time <= 235959 THEN
PFL = 10
PFSL = 10
ELSIF time > 000000 AND time <= 080000 THEN
PFL = 10
PFSL = 10
Endif
set target %profit PFL
endif
set Stop %loss PFSL
endif
Prova così dovrebbe funzionare
Grazie Mauro.
Per curiosità PFL e PFSL sono dei simboli fissi del linguaggio TS o dei nomi che hai dato a TP e SL?
MF
Sono simboli che ho dato io ….. tu metti quello che vuoi…
ciao