Raccolta indicatori e TS per Visualtrader | Pagina 7

Discussione in 'Trading Systems, Econometria' iniziata da 100pezzi, 28 Marzo 2011.

    25 Novembre 2011
  1. autotrader

    autotrader New Member

    Registrato:
    21 Ottobre 2011
    Messaggi:
    668
    Mi permetto di contribuire con un codice per il cacolo del Parabolic SAR.
    Quello postato da 100pezzi (http://www.investireoggi.it/forum/raccolta-indicatori-e-ts-per-visualtrader-vt62206-3.html) ha degli errori, comunque io stesso sono partito da quello e poi ho fatto aggiustamenti.

    I valori non sono identici a quelli dell'inidcatore SAR predefinito in VT, talvolta cambia i punti di inversione. Ho provato a capire la logica del SAR di VT, ma non l'ho azzeccata in pieno. Cmq il codice che vi fornisco è fedele alla definizione da manuale del PSAR tanto che la sua versione prorealtime azzecca tutti valori.

    Codice:
    VAR: PSAR,HP,LP,AF,REVERSE,LONG;
    Input: MaxAF(0.2),IAF(0.02),IncAF(0.02);
    
    if CURRENTBAR = 1 THEN
       PSAR = l;
       LONG = 1;
       AF = IAF;
       HP = H;
       LP = L;
    ELSE
       IF LONG = 1 THEN
          PSAR = PSAR + AF * (HP - PSAR);
       ELSE
          PSAR = PSAR + AF * (LP - PSAR);
       ENDIF;
    
       REVERSE = 0;
       IF LONG = 1 THEN
          IF (L[1] < PSAR) THEN PSAR = L[1]; ENDIF;
          IF (L[2] < PSAR) THEN PSAR = L[2]; ENDIF;
          IF L < PSAR THEN
             LONG = 0;
             REVERSE = 1;
             PSAR = HP;
             LP = L;
             AF = IAF;
          ENDIF;
       ELSE
           IF (H[1] > PSAR) THEN PSAR = H[1]; ENDIF;
           IF (H[2] > PSAR) THEN PSAR = H[2]; ENDIF;
           IF H > PSAR THEN
              LONG = 1;
              REVERSE = 1;
              PSAR = LP;
              HP = H;
              AF = IAF;
           ENDIF;
       ENDIF;
    
       IF reverse = 0 THEN
          IF LONG = 1 THEN
             IF H > HP THEN
                HP = H;
                AF = AF + IncAF;
                IF AF > MaxAF THEN AF = MaxAF; ENDIF;
             ENDIF;
          ELSE
             IF L < LP THEN
                LP = L;
                AF = AF + IncAF;
                IF AF > MaxAF THEN AF = MaxAF; ENDIF;
             ENDIF;
          ENDIF;
       ENDIF;
    
    PLOTCHART(PSAR, 0, RED, SOLID,2);
    
    ENDIF;
     
    Ultima modifica: 25 Novembre 2011
  2. 25 Novembre 2011
  3. 100pezzi

    100pezzi New Member

    Registrato:
    10 Febbraio 2011
    Messaggi:
    113
    ottimo lavoro autotrader, grazie.
     
  4. 12 Dicembre 2011
  5. fracicone

    fracicone New Member

    Registrato:
    20 Maggio 2009
    Messaggi:
    18
    Salve,
    trovo utlissimo l'indicatore di volume Koncorde il cui codice per piattaforma PRT é:

    pvi = PositiveVolumeIndex(close)

    pvim = ExponentialAverage[m](pvi)

    pvimax = highest[90](pvim)

    pvimin = lowest[90](pvim)

    oscp = (pvi - pvim) * 100/ (pvimax - pvimin)

    nvi =NegativeVolumeIndex(close)

    nvim = ExponentialAverage[m](nvi)

    nvimax = highest[90](nvim)

    nvimin = lowest[90](nvim)

    azul = (nvi - nvim) * 100/ (nvimax - nvimin)

    xmf = MoneyFlowIndex[14]

    OB1 = (BollingerUp[25](TotalPrice) + BollingerDown[25](TotalPrice)) / 2
    OB2 = BollingerUp[25](TotalPrice) - BollingerDown[25](TotalPrice)

    BollOsc = ((TotalPrice - OB1) / OB2 ) * 100

    xrsi = rsi [14](TotalPrice)

    STOC = Stochastic[21,3](TotalPrice)

    marron = (xrsi + xmf + BollOsc + (STOC / 3))/2

    verde = marron + oscp

    media = ExponentialAverage[m](marron)

    bandacero= 0

    return verde COLOURED(102,255,102) as "verde", marron COLOURED(255,204,153) as "marron", marron COLOURED(153,51,0) as "lmarron", azul COLOURED(0,204,204) as "azul", verde COLOURED(0,153,51) as "lineav", azul COLOURED(51,51,102) as "lazul", media COLOURED(255,0,0) as "media", bandacero COLOURED(0,0,0) as "cero"
     
  6. 12 Dicembre 2011
  7. fracicone

    fracicone New Member

    Registrato:
    20 Maggio 2009
    Messaggi:
    18
  8. 15 Marzo 2012
  9. eros1973ms

    eros1973ms New Member

    Registrato:
    9 Marzo 2012
    Messaggi:
    4
    Ciao a tutti, riprendo questo interessante post con due domande:
    • esiste un TS con il Sequential e Combo di DeMark?
    • la nuova funzionalità di dispersione tick (market profile) è utilissima, ma per i future CME su SP preferirei settare l'orario dei calcoli sull'apertura di Wall Street. E' possibile? in caso contrario l'analsi dell'initial balance è totalmente fuorviante.

    grazie
     
  10. 28 Marzo 2012
  11. triktrok

    triktrok New Member

    Registrato:
    21 Febbraio 2011
    Messaggi:
    6
    buon giorno ragazzi sapete il codice x vt di murrey math ???oppure x prorealtime ?? grasie
     
  12. 9 Aprile 2012
  13. Magico25

    Magico25 New Member

    Registrato:
    28 Giugno 2008
    Messaggi:
    756
    Località:
    santorso
    batteplan cambiando periodo ,ritmo,tendenza ecc si cambia la struttura del ciclo



    var: DoppioPeriodo, aper,MezzoPeriodo, SottoMezzoPeriodoRitmato,
    SottoSottoMezzoPeriodoRitmato, ArcoSeno(-1.5707963267949), V1(1), V2(2), V4(4), V5(5),
    Btp, Contatore(0), Ciclo1, Ciclo2, Ciclo3, Ciclo4, Ciclo5, IndZona,
    Periodo(200),Ritmo(1),V3(1), Tendenza(1),Forza(1) ,Moltiplicatore(4) ,Orizzontale(4),indzona1, Verticale(20);
    DoppioPeriodo=Periodo*2;
    MezzoPeriodo=Periodo/2;
    SottoMezzoPeriodoRitmato=MezzoPeriodo/Ritmo;
    SottoSottoMezzoPeriodoRitmato=SottoMezzoPeriodoRitmato/2;
    If currentbar>Orizzontale Then
    Contatore=Contatore+1;
    If Contatore=1 Then
    Btp=((cos(ArcoSeno)*(V5*Tendenza*Forza+V4+V3+V2+V1))*Moltiplicatore)+Verticale;
    Else
    Ciclo5=sin(ArcoSeno+Contatore*Arcoseno/DoppioPeriodo)*V5*Tendenza*Forza;
    Ciclo4=Sin(ArcoSeno+Contatore*Arcoseno/Periodo)*V4;
    Ciclo3=Sin(ArcoSeno+Contatore*Arcoseno/MezzoPeriodo)*V3;
    Ciclo2=Sin(ArcoSeno+Contatore*Arcoseno/SottoMezzoPeriodoRitmato)*V2;
    Ciclo1=Sin(ArcoSeno+Contatore*Arcoseno/SottoSottoMezzoPeriodoRitmato)*V1;
    Btp=((Ciclo5+Ciclo4 +Ciclo3+Ciclo2+Ciclo1)*Moltiplicatore)+Verticale;
    Endif;
    Endif;
    //if btp<btp[1] then entershort( bar,atclose);endif;
    //if btp>btp[1] then enterlong( bar,atclose);endif;
    Indzona=CreateViewport(150, true, true);
    indzona1 = createviewport(200, true, true);
    PlotChart(Btp, Indzona, blue, solid, 2);
     
    Ultima modifica: 9 Aprile 2012
  14. 15 Agosto 2012
  15. clcacc

    clcacc New Member

    Registrato:
    17 Giugno 2011
    Messaggi:
    3
    non ho ancora capito come si fa ad impostare un preciso numero di azioni in visual trader ; con enterlong/short non e' possibile . Con buy /sell ?
     
  16. 23 Settembre 2012
  17. mhq

    mhq New Member

    Registrato:
    4 Ottobre 2009
    Messaggi:
    135
    Ho adattato a VT la formula dell'indicatore DiffRS di Caruso.
    Non sono un espeto, e non mi sembra che su VT si possano creare oscillatori nuovi, così l'ho programmato come TS:

    ////////////////////////////////////////////////////////////
    var: diffrs(0);
    DiffRS=Mov(Mov((rsi (c,4,s)-rsi(c,14,s)),3,E),3,E);

    PLOTCHART (DIFFRS, 4, RED, SOLID, 2);
    ///////////////////////////////////////////////////////////


    C'è però il problema che per qualche motivo l'indicatore non viene aggiornato sull'ultima candle daily... suggerimenti? :ciao:
     

    Files Allegati:

    • diffrs.JPG
      diffrs.JPG
      Dimensione del file:
      106,7 KB
      Visite:
      264
  18. 24 Novembre 2012
  19. Ugillo

    Ugillo New Member

    Registrato:
    24 Novembre 2012
    Messaggi:
    2
    ciao,
    spero di essere nel 3d giusto altrimenti suggeritemi dove andare...
    provo a chiedere un supporto per codice VT per ingresso in posizione alla battuta del prezzo. Per essere piu chiaro, ho creato un mio indicatore e vorrei che il TS entrasse in posizione al superamento di un certo livello/indicatore da me creato, cioe entrare in posizione appena il prezzo tocca quel livello/indicatore.
    grazie per il supporto
     

Utenti che hanno già letto questo Thread (Totale: 0)

Condividi questa Pagina