Raccolta di T.S. per Visual Trader

un mio piccolo contributo con un ts pronto ed utilizzabile su Fiat
equity molto, ma molto interessante
timeframe 5giorni + 1 minuto
invito tutti voi a migliorare la sua equity
Codice:
Var: mioosc,mioosc1,mioosc2,colore;
var: myequity, mediaeq, condLong, condShort, myeqopclosed,zona_s;
Var: indzona1,indzona2,indzona3;

if IsFirstBarDay then
  mioosc = 0;
  mioosc1 = 0;
  mioosc2 = 0;
endif;

myeqopclosed = getReport(EQOPCLOSED);
myequity = getReport(TOTNETPROFIT); // Estraggo il valore di equity attuale
mediaeq = MOV(myequity, 30, S);  // Faccio la media dell'equity


mioosc =SumIncDaily (C);    //Sommatoria close
mioosc1 = SumIncDaily (H);   //Sommatoria high
mioosc2 = SumIncDaily (L);   //Sommatoria low


installstoplossandreverse( intick,10,stop);


if barsince (mioosc > mioosc[1]) > 2 and barsince (mioosc1 > mioosc1[1]) > 2 and barsince (mioosc2 > mioosc2[1]) > 2
and mioosc < 0 and mioosc1 < 0 and mioosc2 < 0
then enterlong(nextbar,atopen);colore = green;endif;
if barsince (mioosc < mioosc[1]) > 2 and barsince (mioosc1 < mioosc1[1]) > 2 and barsince (mioosc2 < mioosc2[1]) > 2
and mioosc > 0 and mioosc1 > 0 and mioosc2 > 0
then entershort(nextbar,atopen);colore = red;endif;

colorbar(colore);
{indzona1 = Createviewport(200);
indzona2 = Createviewport(200);
indzona3 = Createviewport(200);

PlotChart(mioosc,indzona1,black,solid,2);
PlotChart(mioosc1,indzona2,green,solid,2);
PlotChart(mioosc2,indzona3,red,solid,2);

DrawText(NEWOGG,indzona1 , D,mioosc , "s.C.",mioosc, black, 15, 1+4,Alright);
DrawText(NEWOGG,indzona2 , D,mioosc1 , "s.H.",mioosc1, black, 15, 1+4,Alright);
DrawText(NEWOGG,indzona3 , D,mioosc2 , "s.L.",mioosc2, black, 15, 1+4,Alright);}


zona_s = CreateViewport(400, 0, true);
// disegno l'equity e la sua media
plotchartNoZero(myequity, zona_s, lime, solid, 2);
plotchartNoZero(mediaeq, zona_s, red, solid, 2);
//plotchartNoZero(myeqopclosed, zona_s, black, solid, 3);

DrawText(NEWOGG,zona_s , D,myequity , "EQ",myequity, black, 15, 1+4,Alright);

Ma perché mi da sempre errore quando lo incollo?! :O! Ho controllato questa volta non ci sono spazi in più!.

Verifica Formula ... Errore
Errore di Sintassi in Riga n° 12: Errore durante il parse dell'espressione: GETREPORT(EQOPCLOSED)

mi sento stupido non capisco qual'è il problema..:mmmm:
 
Ma perché mi da sempre errore quando lo incollo?! :O! Ho controllato questa volta non ci sono spazi in più!.

Verifica Formula ... Errore
Errore di Sintassi in Riga n° 12: Errore durante il parse dell'espressione: GETREPORT(EQOPCLOSED)

mi sento stupido non capisco qual'è il problema..:mmmm:

il ts gita con la versione beta, quella formula è della beta.
per farlo girare sulla versione normale annulla la formula stessa
 
TS Memoria Indicatori
estrae massimi/minimi indicatori e li tiene in memoria

Codice:
//________________Memoria_max-min indicatori______________//
Var: pdx14,ndx14,op1,op2,op3,op4,indzona1,indzona2;
Var: max_op4(-100), min_op4(100),med_op4;




/////////////////////////////////////////////////////////////////////////////
pdx14=DMPDX(C,14); //14
ndx14=DMNDX(C,14); //14
op1= op(pdx14,ndx14,add);
op2=op(pdx14,ndx14,sub);
op3=op(op2,op1,divis);
op4=wilder(op3,14);
////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
if (DayOfWeek = friday) and (T>1659) then
   max_op4=op4;
   min_op4=op4;
endif;

if (op4>max_op4) then max_op4=op4;
endif;

if (op4<min_op4) then min_op4=op4;
endif;
med_op4=max_op4-(max_op4-min_op4)*0.5;


Indzona1=CreateViewport(400,0,true);
Plotchart(op4,Indzona1,blue, solid, 2);
Plotchart(max_op4,Indzona1,green, solid, 2);
Plotchart(min_op4,Indzona1,red, solid, 2);
Plotchart(med_op4,Indzona1,black, dot, 1);

Indzona2=CreateViewport(400,0,true);
Plotchart(pdx14,Indzona2,green, solid, 2);
Plotchart(ndx14,Indzona2,red, solid, 2);
 

Allegati

  • ScreenShot050.png
    ScreenShot050.png
    88,9 KB · Visite: 217
Ciao Xavièr,
come stai?

Plaudo alla tua iniziativa di rendere pubblici dei codici base come questi.
Può essere di stimolo ed aiuto a chi vuole apprendere.
Ho visto i tuoi codici sui pivots.
A suo tempo avevo creato questo codice, che racchiudeva i pivot giornalieri, settimanali su base fissa e quelli in tempo reale, ossia che aggiornano il pivot in base ad un aggiornamento in tempo reale di un massimo, minimo o un close.

Ve lo incollo, più facile a vedere che a spiegare.

Codice:
Var:newWeek(false),giorno,azzera(0),wOpen,wLow,wHigh,wClose,pivotW(0),nmax,nmin,WeHigh,WeLow;
Var:contabb,avprice,rtwhigh,rtwlow,pivotRTW;
Var:newday,mioopen,miomin,miomax,mioclose,pivotD;
Var:contabb2,rtdhigh,rtdlow,pivotRTD;

giorno=dayofweek;
//pivot rt week
contabb=barsinceinverted (isfirstbarday and giorno<giorno[1]);
contabb2=barsinceinverted (isfirstbarday);
if isfirstbarbegin then rtwhigh=h;rtwlow=l;rtdhigh=h;rtdlow=l;endif;

if contabb=0 then rtwhigh=h;rtwlow=l;endif;
if contabb2=0 then rtdhigh=h;rtdlow=l;endif;

  if h>rtwhigh then rtwhigh= h;nmax=nmax+1;endif;
  if l<rtwlow then rtwlow= l;nmin=nmin+1;endif;
  if h>rtdhigh then rtdhigh= h;endif;
  if l<rtdlow then rtdlow= l;endif;
  pivotRTW=(rtwlow+rtwhigh+c)/3;
  avprice=(rtwlow+rtwhigh)/2;
  pivotRTD=(rtdlow+rtdhigh+c)/3;


//pivot week
newweek=GetValues(weeks,1,wOpen,wLow,wHigh,wClose);
azzera=iif(giorno<giorno[1],1,0);

if azzera=1 then
  pivotW=(wHigh+wLow+wClose)/3;
  WeHigh=WHigh;WeLow=wLow;
  nmax=0;nmin=0;
endif;

 //pivot daily
newday=GetValues(days,1,mioopen,miomin,miomax,mioclose);
pivotD=(miomin+miomax+mioclose)/3;
 
plotchart(pivotW,0,black,solid,2);
plotchart(pivotRTW,0,fuchsia,solid,2);
plotchart(pivotD,0,skyblue,solid,2);
plotchart(rtwLow,0,red,solid,1);
plotchart(rtwHigh,0,green,solid,1);
plotchart(pivotRTD,0,moneygreen,solid,2);
plotchart(rtdLow,0,maroon,solid,1);
plotchart(rtdHigh,0,lime,solid,1);
plotchart(WeHigh,0,teal,solid,1);
plotchart(WeLow,0,purple,solid,1);
plotchart(nmax,2,green,solid,1);
plotchart(nmin,2,red,solid,1);
 
In alcuni listati vedo la sigla "op".
Che cosa significa ?
 
Io sto lasciando il visual trader per sempre.
Più che risolvere le anomalie e dare tutte le info possibili ai programmatori per offrire il servizio migliore e gratuitamente ... non posso fare.
Ma loro non stanno al mio passo e le cose non migliorano, quindi mi son fermato :)

Compatibilmente con il mio tempo residuo, poco in questo momento (mio figlio ha 3 anni aiutooooooooooooo) -> Amibroker is the way.

In effetti se trovo un editore faccio un libro postumo sul vt e le mado nne che ci ho lanciato sopra :yes:
 
Io sto lasciando il visual trader per sempre.
Più che risolvere le anomalie e dare tutte le info possibili ai programmatori per offrire il servizio migliore e gratuitamente ... non posso fare.
Ma loro non stanno al mio passo e le cose non migliorano, quindi mi son fermato :)

Compatibilmente con il mio tempo residuo, poco in questo momento (mio figlio ha 3 anni aiutooooooooooooo) -> Amibroker is the way.

In effetti se trovo un editore faccio un libro postumo sul vt e le mado nne che ci ho lanciato sopra :yes:[/QUOTE]

E se tu lo fai io te lo compro ;) a patto che abbia un costo ragionevole ( eh ragazzi c'è la crisi anche per le mie tasche).
Però stasera do un' occhiata al sito di Amibroker.
 
Io sto lasciando il visual trader per sempre.
Più che risolvere le anomalie e dare tutte le info possibili ai programmatori per offrire il servizio migliore e gratuitamente ... non posso fare.
Ma loro non stanno al mio passo e le cose non migliorano, quindi mi son fermato :)

Compatibilmente con il mio tempo residuo, poco in questo momento (mio figlio ha 3 anni aiutooooooooooooo) -> Amibroker is the way.

In effetti se trovo un editore faccio un libro postumo sul vt e le mado nne che ci ho lanciato sopra :yes:

amibroker is the way..ma come lo agganci al broker? (io ho directa e iw)
 
Io sto lasciando il visual trader per sempre.
Più che risolvere le anomalie e dare tutte le info possibili ai programmatori per offrire il servizio migliore e gratuitamente ... non posso fare.
Ma loro non stanno al mio passo e le cose non migliorano, quindi mi son fermato :)

Compatibilmente con il mio tempo residuo, poco in questo momento (mio figlio ha 3 anni aiutooooooooooooo) -> Amibroker is the way.

In effetti se trovo un editore faccio un libro postumo sul vt e le mado nne che ci ho lanciato sopra :yes:[/QUOTE]

E se tu lo fai io te lo compro ;) a patto che abbia un costo ragionevole ( eh ragazzi c'è la crisi anche per le mie tasche).
Però stasera do un' occhiata al sito di Amibroker.

Puo essere un idea. Se qualche editore legge, anche Lo stesso del Fol, mi contatti.
Il titolo, Lo stesso Di questo 3d.
D' altra parte sono il Massimo esperto Nel campo, Qualcuno dice :)
La butto la', sfrutto il tuo assist, non si Puo' Mai sapere :)

Ciaooo
 
Ma qualcuno ha mai pensato di fare un librettino con la sintassi di programmazione per VT seguita da esempi pratici, consigli sui Ts, etc.
A parte un libro di tanti anni fa credo non ci sia niente in circolazione.

Qualcosa di "basico" lo trovi nella guida in linea una volta aperto l'editor dei TS ... se può essere d'aiuto :rolleyes:
 
Vabbe dai queste le ho inventate io...magari si possono pure usare...

BANDE DI KROLL

Codice:
Var: PrelimS1, ActualS1, PrelimS2, ActualS2,zona1,SIG;
Var: PrelimStop1, ActualStop1, PrelimStop2, ActualStop2,superkroll;
Var: Pds1(20), Mult(2);

PrelimStop1= HHV(H,Pds1) - ATR(c,Pds1)*Mult;
ActualStop1= HHV(PrelimStop1,Pds1*Mult);

PrelimStop2= LLV(L,Pds1) + ATR(c,Pds1)*Mult;
ActualStop2= LLV(PrelimStop2,Pds1*mult);

PrelimS1= LLV(H,Pds1) + ATR(c,Pds1)*Mult;
ActualS1= HHV(PrelimS1,Pds1*Mult);

PrelimS2= HHV(L,Pds1) - ATR(c,Pds1)*Mult;
ActualS2= LLV(PrelimS2,Pds1*mult);

superkroll = (ActualStop1+ActualStop2)/2;

///PLOT///
plotchartnozero(superkroll,0,colupdownval,solid,3);
plotchart (ActualS1, 0, black, solid, 3);
plotchart (ActualS2, 0, black, solid, 3);

if c>superkroll THEN COLORBAR(lime);endif;
if c<superkroll THEN COLORBAR(red);endif;
 
TS contasituazione

Codice:
var: fflat,lg,sh,contalg,contash,contaflat,indzona1;

    //////////////////////___CONTA_Situazione___///////////////////////////////////////////////

if positiondir=0 then fflat=1;endif;
if positiondir<>0 then fflat=0;contaflat=0;endif;
if fflat=1 and fflat[1]=1 then contaflat=(contaflat[1]+1);endif;

if positiondir=1 then lg=1;endif;
if positiondir<>1 then lg=0;contalg=0;endif;
if lg=1 and lg[1]=1 then contalg=(contalg[1]+1);endif;

if positiondir=-1 then sh=1;endif;
if positiondir<>-1 then sh=0;contash=0;endif;
if sh=1 and sh[1]=1 then contash=(contash[1]+1);endif;
/////////////////////////////////////////////////////////////////////////////

if t>1000 and t<1345 then enterlong(nextbar,atopen);endif;
if positiondir=1 and t=1400 then exitlong (nextbar,atopen);endif;
if t>1530 and t<1630 then entershort(nextbar,atopen);endif;
if positiondir=-1 and t=1700 then exitshort (nextbar,atopen);endif;


Indzona1=CreateViewport(400,0,true);
Plotchart(contalg,Indzona1,green, solid, 2);
Plotchart(contash,Indzona1,red, solid, 2);
Plotchart(contaflat,Indzona1,black, solid, 2);
 

Allegati

  • ScreenShot024.png
    ScreenShot024.png
    85,3 KB · Visite: 247
Ciao, ma la programmazione (el)è diversa o sbaglio?

E' molto diversa e molto più difficile.
VT è scritto in linguaggio semplice ed intuibile e questo è un gran pregio.
Il linguaggio di AB è invece concentrato e complesso, in poche stringhe scrive un codice intero.
Ma se qualcuno può fare questo passaggio, questo sono io.
Il tutto sta nel cominciare, sono anni che lo dico e non comincio mai, consapevole del fatto che, se comincio e si accende la lampadina in testa, poi mi schiavizza perchè non si spegne più :yes:
 
TS contasituazione

Codice:
var: fflat,lg,sh,contalg,contash,contaflat,indzona1;

    //////////////////////___CONTA_Situazione___///////////////////////////////////////////////

if positiondir=0 then fflat=1;endif;
if positiondir<>0 then fflat=0;contaflat=0;endif;
if fflat=1 and fflat[1]=1 then contaflat=(contaflat[1]+1);endif;

if positiondir=1 then lg=1;endif;
if positiondir<>1 then lg=0;contalg=0;endif;
if lg=1 and lg[1]=1 then contalg=(contalg[1]+1);endif;

if positiondir=-1 then sh=1;endif;
if positiondir<>-1 then sh=0;contash=0;endif;
if sh=1 and sh[1]=1 then contash=(contash[1]+1);endif;
/////////////////////////////////////////////////////////////////////////////

if t>1000 and t<1345 then enterlong(nextbar,atopen);endif;
if positiondir=1 and t=1400 then exitlong (nextbar,atopen);endif;
if t>1530 and t<1630 then entershort(nextbar,atopen);endif;
if positiondir=-1 and t=1700 then exitshort (nextbar,atopen);endif;


Indzona1=CreateViewport(400,0,true);
Plotchart(contalg,Indzona1,green, solid, 2);
Plotchart(contash,Indzona1,red, solid, 2);
Plotchart(contaflat,Indzona1,black, solid, 2);


questo mi è proprio nuovo..di che si tratta? :O
 
beh dai non sei il primo ad aver utilizzato VT che si mette ad usare Ami...
secondo me la difficoltà più grossa è poterlo poi utilizzare realtime senza avere dei costi enormi

Certo, non ci sono grossi problemi a livello di conoscenze/software.
I problemi sono il tempo (il mio tempo libero) ed il costo.
 
ragazzi...un favore...gentilmente cancellate i messaggi non inerenti ai ts...grazie
 
Indietro