Programmazione Visual Trader per chi usa sia vt che prt (1 Viewer)

ale73a

break even trader
ciao, ho costruito un indicatore x il momentum pinball, una bella strategia intraday che dopo spiego volentieri, servono questi parametri:

roc a 1 periodo (close-close di ieri)
rsi a 3 periodi del roc sopracitato

è mai possibile che il codice di vt e quello di prt diano valori diversi?
tra i due dovrebbe essere giusto quello di prt
posto i codici e i grafici su fiat, ad esempio

prt
Codice:
roc1=close-close[1]
rs=RSI[3](roc1)
return rs

vt
Codice:
var: miorsi, mioroc,indzona1;
mioroc=roc(c,1);
mioroc=op(c,constval(1),mul);
miorsi=rsi(mioroc,3,s);
indzona1=createviewport(100,true,true);
plotchart(miorsi,indzona1,red,solid,1);

1250445500screenshot001.jpg


1250445683screenshot002.jpg
 

Damien

Nessuno è mai al sicuro
ciao, ho costruito un indicatore x il momentum pinball, una bella strategia intraday che dopo spiego volentieri, servono questi parametri:

roc a 1 periodo (close-close di ieri)
rsi a 3 periodi del roc sopracitato

è mai possibile che il codice di vt e quello di prt diano valori diversi?
tra i due dovrebbe essere giusto quello di prt
posto i codici e i grafici su fiat, ad esempio

prt
Codice:
roc1=close-close[1]
rs=RSI[3](roc1)
return rs
vt
Codice:
var: miorsi, mioroc,indzona1;
mioroc=roc(c,1);
mioroc=op(c,constval(1),mul);
miorsi=rsi(mioroc,3,s);
indzona1=createviewport(100,true,true);
plotchart(miorsi,indzona1,red,solid,1);
1250445500screenshot001.jpg


1250445683screenshot002.jpg

Mah, che io sappia, il roc non si calcola semplicemente come (close-close di ieri)
Leggo qui:
http://www.performancetrading.it/AT/ai/aiRoc.htm

Il Price Rate-Of-Change (R.O.C.) indicatore è calcolato dal rapporto tra la differenza tra la chiusura più recente e la chiusura registrata n periodi indietro.
La formula per il calcolo è'
Roc = ((P-P5)/P5)*100
dove
P indica l'ultima chiusura
P5 la chusura di 5 periodi indietro
Il rapporto viene moltiplicato per 100 allo scopo di regolarizzare l'oscillatore attorno ad una linea dello Zero.


Infatti in VT il roc a 1 barra è (close - close[1])/close[1]*100

Ciao.
 

ale73a

break even trader
Mah, che io sappia, il roc non si calcola semplicemente come (close-close di ieri)
Leggo qui:
http://www.performancetrading.it/AT/ai/aiRoc.htm

Il Price Rate-Of-Change (R.O.C.) indicatore è calcolato dal rapporto tra la differenza tra la chiusura più recente e la chiusura registrata n periodi indietro.
La formula per il calcolo è'
Roc = ((P-P5)/P5)*100
dove
P indica l'ultima chiusura
P5 la chusura di 5 periodi indietro
Il rapporto viene moltiplicato per 100 allo scopo di regolarizzare l'oscillatore attorno ad una linea dello Zero.


Infatti in VT il roc a 1 barra è (close - close[1])/close[1]*100

Ciao.

ciao Damien, è vero, non è proprio la stessa cosa.
la formula che ho usato io x prt è la variazione in valore assoluto tra la chiusura di oggi e quella di n periodi fa, quella da te riportata invece è la variazione in percentuale tra le due chiusure...probabilmente usando il valore assoluto anche in vt dovrebbe venir fuori lo stesso grafico...
ci provo subito, grazie :up:
 

Damien

Nessuno è mai al sicuro
niente da fare, stesso identico grafico, probabilmente prt usa un tipo di rsi e vt l'altra formula (ci sono due modi di calcolarlo)
http://www.performancetrading.it/AT/ai/aiRsi.htm
peccato :(


Nah, aspetta. Dal tuo primo post capivo che il problema fosse nel calcolo del roc.
Se, invece, parli di RSI non serve tutta questa roba

var: miorsi, mioroc,indzona1;
mioroc=roc(c,1);
mioroc=op(c,constval(1),mul);
miorsi=rsi(mioroc,3,s);
indzona1=createviewport(100,true,true);
plotchart(miorsi,indzona1,red,solid,1);

RSI di vt è semplicemente rsi(c,n,s) dove n sta per il numero delle barre.

Due modi per calcolare l'RSI? Si calcola tenendo conto dei differenziali (delta) giorni + e giorni - e delle loro medie in base al periodo scelto.

Ciao.
 

ale73a

break even trader
Nah, aspetta. Dal tuo primo post capivo che il problema fosse nel calcolo del roc.
Se, invece, parli di RSI non serve tutta questa roba

var: miorsi, mioroc,indzona1;
mioroc=roc(c,1);
mioroc=op(c,constval(1),mul);
miorsi=rsi(mioroc,3,s);
indzona1=createviewport(100,true,true);
plotchart(miorsi,indzona1,red,solid,1);

RSI di vt è semplicemente rsi(c,n,s) dove n sta per il numero delle barre.

Due modi per calcolare l'RSI? Si calcola tenendo conto dei differenziali (delta) giorni + e giorni - e delle loro medie in base al periodo scelto.

Ciao.

allora...la formula del rsi su vt la sapevo, dovevo solo sostituire "c" con il roc a 1 periodo, perchè così va calcolato l'oscillatore x il pinball.
non so se in modo ortodosso ho allora fatto in modo che vt riconoscesse il roc come array
mioroc=roc(c,1);
mioroc=op(c,constval(1),mul);
e in effetti l'ha riconosciuto
il problema è che non risultano gli stessi valori tra la formula di prt e quella di vt.
dato che, provando a sostituire in vt:
mioroc=roc(c,1);
con
mioroc=(c-c[1]);
e il risultato è lo stesso ne deduco che il problema sia l'rsi che, può essere calcolato - copio e ioncollo - in due modi

formule per il calcolo dell' RSI
RSI= 100-100/(1+(Gp/Gn)
dove:
Gp indica il numero dei giorni positivi e
Gn il numero dei giorni negativi
RSI= 100-100/(1+(GpM/GnM)
dove:
GpM è la media dei giorni positivi
GnM è la media dei giorni negativi


quindi probabilmente vt usa una formula, prt l'altra...appena posso faccio il confronto, ciao e grazie ancora
 

ale73a

break even trader
l'rsi di vt e quello di prt danno valori identici, quindi il problema è del roc...
se lo risolvo lo posto
 

ale73a

break even trader
risolto...
la formula di prt
Codice:
roc1=close-close[1]
rs=RSI[3](roc1)
return rs
corrisponde a quella di vt
Codice:
var:mioroc,miorsi,indzona1;
mioroc=roc(c,1);
[B]miorsi=rsi(mioroc,3,s);[/B]
indzona1=createviewport(100,true,true);
plotchart(miorsi,indzona1,red,solid,1);

non capisco però come faccia a non darmi errore la riga in grassetto, dato che mioroc non è un array...:-?:-?:-?
 

ale73a

break even trader
ecco la strategia x chi fosse interessato:
x il long: se oggi il miorsi<30 allora domani compro 2-3 tick sopra il max della prima barra oraria - stop loss sotto al min di questa
x lo short: se oggi miorsi>70 allora domani vendo 2-3 tick sotto il min della prima barra oraria - sl sopra al max di essa
appena possibile alzare il trailing stop con metà posizione e lasciare correre l'altra
se alle 17.20 siamo ancora dentro in gain si può provare a lasciare aperta la posizione overnight
...
come automatizzo un ts lo metto, cmq ad occhio non è male come strategia
 

Hell75

Nuovo forumer
ecco la strategia x chi fosse interessato:
x il long: se oggi il miorsi<30 allora domani compro 2-3 tick sopra il max della prima barra oraria - stop loss sotto al min di questa
x lo short: se oggi miorsi>70 allora domani vendo 2-3 tick sotto il min della prima barra oraria - sl sopra al max di essa
appena possibile alzare il trailing stop con metà posizione e lasciare correre l'altra
se alle 17.20 siamo ancora dentro in gain si può provare a lasciare aperta la posizione overnight
...
come automatizzo un ts lo metto, cmq ad occhio non è male come strategia

Ciao Ale,
Ho modificato leggermente il tuo TS, guarda un po' se così ti può piacere

Codice:
{******************************************************************************
Ale73a Mod. By Hell  2009-08-17    ROC e RSI
******************************************************************************}
var: mioroc,miorsi,OPENDAY,indzona1;
InstallTrailingProfit(Inperc, 2, 1.8, "Pick",CHECKMAX +EXITONLYIFCLOSEON);
InstalltakeProfit(inperc, 5.9, "take");
installstoploss(inperc,1.5,"SL");
if IsFirstBarDay then
OPENDAY = O;
endif;
mioroc=roc(c,1);
miorsi=rsi(mioroc,3,s);
if miorsi<40 and OPENDAY<C[1]
   then EnterLONG  (bar, atclose, 0,0,"LG");endif;
if miorsi>60 and OPENDAY>C[1]
   then EnterShort (bar, atclose, 0,0,"SH");endif;
indzona1=createviewport(100,true,true);
plotchart(miorsi,indzona1,red,solid,1);
plotchart(30,indzona1,aqua,solid,1);
plotchart(70,indzona1,aqua,solid,1);
 

Users who are viewing this thread

Alto