Scritto da travis
Come si dice al sistema "stai fermo un giorno dopo un trade che ha dato un profitto > x" e "non fare trade long dopo un trade short che ha dato un profitto > x"?
1-
Sei troppo generico per una risposta precisa, ipotizzo intraday e che il sistema vada flat da long o short dell'ultima operazione:
Vars

ateOfExit(0),Mp(0),Count(0);
If Mp=0 AND MP[1]<>0 then begin {Individua l'ultima uscita}
DateOfExit=D; {Salva la data}
Count=0; {Resetta il contatore}
end;
If D>D[1] AND D>DateOfExit then Count=Count+1;
{Aumenta il contatore all'inizio di ogni giorno successivo alla data dell'ultima uscita}
If PositionProfit(1)>x then begin
{Se l'ultima posizione ha avuto un profitto >x}
If Count>1 then begin
{Controlla che sia trascorso almeno un giorno}
"Tuoi segnali di entrata"
end;
end else begin
{Se no adotta i segnali normali}
"Tuoi segnali di entrata"
end;
Non l'ho testato guarda se ti funziona perchè molto dipende anche dai segnali di entrata e di uscita che usi, e ti consiglio di fare ampio uso delle Print statement per controllare barra per barra i valori delle variabili.
2-
Vars:Mp(0),LastShort(False);
Mp=MarketPosition;
If Mp<>-1 and MP[1]=-1 then LastShort=True; {Ultima op short}
If Mp<>1 and MP[1]=1 then LastShort=False; {Ultima op long}
If PositionProfit>x then begin
{Controlla di aver avuto un prof>x}
If LastShort then begin {Se è stata uno short no ordini long"}
"Tuoi segnali di entrata solo short"
end;
end else begin
" Tuoi segnali sia long che short"
end;
Stesse avvertenze che sopra.
Ciao.