Citazione Originariamente Scritto da Apocalips Visualizza Messaggio
Nessuna inesattezza Alex, il tuo script funziona correttamente.
Io lo renderei ancora piu snello con l'utilizzo della funzione crossover creata apposta per semplificare le cose e per scrivere meno a parità di risultato, quindi:

buy script:

INPUTS: @periods(300), @lowMark(-35), @highMark(-65), @TakeProfit (100)

set take_profit = @TakeProfit

set A = WilliamsPctR(@periods)

set ConditionBuy = CROSSOVER(A, @lowMark)
set ConditionSell = CROSSOVER(@highMark, A)

set Position = ConditionBuy - ConditionSell
set LastPosition = CHANGEIF(Position <> 0, Position)

ConditionBuy AND REF(LastPosition, 1) <> 1
Sell script:

set A = WilliamsPctR(@periods)

set ConditionBuy = CROSSOVER(A, @lowMark)
set ConditionSell = CROSSOVER(@highMark, A)

set Position = ConditionBuy - ConditionSell
set LastPosition = CHANGEIF(Position <> 0, Position)

ConditionSell AND REF(LastPosition, 1) <> -1
Colgo l'occasione per ringraziare il buon Smash che riesce sempre a trasformare un' idea di trading in un codice EasySscript elegante, funzionante e perfettamente rispondente alle nostre aspettative. grazie.

Apo

Grazie infinite Apo per questa semplificazione dello script.
La programmazione con EasyScript è affascinante.

Mi associo inoltre ai ringraziamenti rivolti al grande Smash.