Buonasera
Sto cercando di costruire un TS che mi acquisti un determinato numero di contratti in base al guadagno del TS stesso (STRATEGYPROFIT)
Le istruzioni che ho inserito sono queste ma mi da errore….
Inoltre chiedo se il valore restitutio da STRATEGYPROFIT è in euro o nella valuta dello strumento.
Grazie
once N = 2 // number of contracts
If STRATEGYPROFIT > 165 and STRATEGYPROFIT < 333 then n=2.5
elsif STRATEGYPROFIT > 333 and STRATEGYPROFIT < 500 then n=3
elsif STRATEGYPROFIT > 500 and STRATEGYPROFIT < 666 then n=3.5
elsif STRATEGYPROFIT > 666 and STRATEGYPROFIT < 800 then n=4
elsif STRATEGYPROFIT > 800 and STRATEGYPROFIT < 1000 then n=4.5
elsif STRATEGYPROFIT > 1000 and STRATEGYPROFIT < 1165 then n=5
elsif STRATEGYPROFIT > 1165 and STRATEGYPROFIT < 1333 then n=5.5
elsif STRATEGYPROFIT > 1333 and STRATEGYPROFIT < 1500 then n=6
elsif STRATEGYPROFIT > 1500 and STRATEGYPROFIT < 1666 then n=6.5
elsif STRATEGYPROFIT > 1666 and STRATEGYPROFIT < 1800 then n=7
elsif STRATEGYPROFIT > 1800 and STRATEGYPROFIT < 2000 then n=7.5
elsif STRATEGYPROFIT > 2000 and STRATEGYPROFIT < 2165 then n=8
elsif STRATEGYPROFIT > 2165 and STRATEGYPROFIT < 2333 then n=8.5
elsif STRATEGYPROFIT > 2333 and STRATEGYPROFIT < 2500 then n=9
elsif STRATEGYPROFIT > 2500 and STRATEGYPROFIT < 2666 then n=9.5
elsif STRATEGYPROFIT > 2666 and STRATEGYPROFIT < 2800 then n=10
elsif STRATEGYPROFIT > 2800 and STRATEGYPROFIT < 3000 then n=10.5
elsif STRATEGYPROFIT > 3000 and STRATEGYPROFIT < 3165 then n=11
elsif STRATEGYPROFIT > 3165 and STRATEGYPROFIT < 3333 then n=11.5
elsif STRATEGYPROFIT > 3333 and STRATEGYPROFIT < 3500 then n=12
elsif STRATEGYPROFIT > 3500 and STRATEGYPROFIT < 3666 then n=12.5
elsif STRATEGYPROFIT > 3666 and STRATEGYPROFIT < 3800 then n=13
elsif STRATEGYPROFIT > 3800 and STRATEGYPROFIT < 4000 then n=13.5
elsif STRATEGYPROFIT > 4000 and STRATEGYPROFIT < 4165 then n=14
elsif STRATEGYPROFIT > 4165 and STRATEGYPROFIT < 4333 then n=14.5
elsif STRATEGYPROFIT > 4333 then n=15
ENDIF
IF miacondizione then
buy N shares AT MARKET
else
if miacondizione2 then
sellshort N shares at market
endif
Scusate ho risolto la parte relativa alle istruzioni…..
Mi interesserebbe sapere se il valore restituito è nella valuta del conto (Euro) o dello strumento.
Grazie
STRATEGYPROFIT è nella valuta del tuo conto.
Scusa Roberto ma da graph mi risulta che, per esempio per Eur/Usd, strategyprofit sia nella valuta dello strumento…..quindi $….
Infatti ho provato con UsCrude ed è in €….
E’ vero, questo può essere un problema, sia nel tuo caso che quando ci sia de gestire la grandezza dei lotti. Occorrerà esprimere le cifre tenendo conto di come è espresso il guadano o la perdita.
Sapevo che il profitto della singola operazione è espresso nella valuta propria dello strumento, ma pensavo fosse convertita per aggiornare il totale della strategia, invece non è così.
Generalmente le mie prove le faccio sul DAX, per cui non avevo mai fatto caso a questo.
Il problema principale è che non puoi confrontare altri strumenti, quindi non puoi nemmeno fare una conversione automatica, perché non puoi sapere quant’è il rapporto con l’Euro.
Devi mettere un cambio iniziale manuale ed aggiornarlo con una certa frequenza.
Nel tuo esempio:
once N = 2 // number of contracts
ONCE Cambio = 1.2150
If STRATEGYPROFIT > 165 * Cambio AND STRATEGYPROFIT < 333 * Cambio THEN
n=2.5
elsif STRATEGYPROFIT > 333 * Cambio AND STRATEGYPROFIT < 500 * Cambio THEN
n=3
elsif STRATEGYPROFIT > 500 * Cambio AND STRATEGYPROFIT < 666 * Cambio THEN
n=3.5
elsif STRATEGYPROFIT > 666 * Cambio AND STRATEGYPROFIT < 800 * Cambio THEN
n=4
elsif STRATEGYPROFIT > 800 * Cambio AND STRATEGYPROFIT < 1000 * Cambio THEN
n=4.5
elsif STRATEGYPROFIT > 1000 * Cambio AND STRATEGYPROFIT < 1165 * Cambio THEN
n=5
elsif STRATEGYPROFIT > 1165 * Cambio AND STRATEGYPROFIT < 1333 * Cambio THEN
n=5.5
elsif STRATEGYPROFIT > 1333 * Cambio AND STRATEGYPROFIT < 1500 * Cambio THEN
n=6
elsif STRATEGYPROFIT > 1500 * Cambio AND STRATEGYPROFIT < 1666 * Cambio THEN
n=6.5
elsif STRATEGYPROFIT > 1666 * Cambio AND STRATEGYPROFIT < 1800 * Cambio THEN
n=7
elsif STRATEGYPROFIT > 1800 * Cambio AND STRATEGYPROFIT < 2000 * Cambio THEN
n=7.5
elsif STRATEGYPROFIT > 2000 * Cambio AND STRATEGYPROFIT < 2165 * Cambio THEN
n=8
elsif STRATEGYPROFIT > 2165 * Cambio AND STRATEGYPROFIT < 2333 * Cambio THEN
n=8.5
elsif STRATEGYPROFIT > 2333 * Cambio AND STRATEGYPROFIT < 2500 * Cambio THEN
n=9
elsif STRATEGYPROFIT > 2500 * Cambio AND STRATEGYPROFIT < 2666 * Cambio THEN
n=9.5
elsif STRATEGYPROFIT > 2666 * Cambio AND STRATEGYPROFIT < 2800 * Cambio THEN
n=10
elsif STRATEGYPROFIT > 2800 * Cambio AND STRATEGYPROFIT < 3000 * Cambio THEN
n=10.5
elsif STRATEGYPROFIT > 3000 * Cambio AND STRATEGYPROFIT < 3165 * Cambio THEN
n=11
elsif STRATEGYPROFIT > 3165 * Cambio AND STRATEGYPROFIT < 3333 * Cambio THEN
n=11.5
elsif STRATEGYPROFIT > 3333 * Cambio AND STRATEGYPROFIT < 3500 * Cambio THEN
n=12
elsif STRATEGYPROFIT > 3500 * Cambio AND STRATEGYPROFIT < 3666 * Cambio THEN
n=12.5
elsif STRATEGYPROFIT > 3666 * Cambio AND STRATEGYPROFIT < 3800 * Cambio THEN
n=13
elsif STRATEGYPROFIT > 3800 * Cambio AND STRATEGYPROFIT < 4000 * Cambio THEN
n=13.5
elsif STRATEGYPROFIT > 4000 * Cambio AND STRATEGYPROFIT < 4165 * Cambio THEN
n=14
elsif STRATEGYPROFIT > 4165 * Cambio AND STRATEGYPROFIT < 4333 * Cambio THEN
n=14.5
elsif STRATEGYPROFIT > 4333 * Cambio THEN
n=15
ENDIF
IF miacondizione then
buy N shares AT MARKET
else
if miacondizione2 then
sellshort N shares at market
endif
endif
Ovviamente quando dovrai convertire STRATEGYPROFIT in euro dovrai divedere per il cambio.
Usando il cambio in questo modo puoi continuare a ragioinare con le cifre in EURO, altrimenti dovresti cambiare le singole cifre.
Ok grazie mi basta la tua conferma al riguardo, poi vedo come gestirlo il meglio possibile (magari usando TF 1 day e Close…..)!
Gentilissimo come sempre!
grazie ancora