Risultati da 1 a 10 di 10

Discussione: indicatore Varianza

  1. #1

    Data Registrazione
    Feb 2013
    Località
    Verona/Vicenza
    Messaggi
    154

    indicatore Varianza

    Visto che stavo seguendo il post molto interessante di Thalos, ho provato a creare la funzione e il relativo script per ottenere la varianza......

    Sono andato a cercarmi in rete la formula per il suo calcolo che risulta essere questa:

    ................n
    s² = 1/n * ∑ (xi - x°)²
    ................i = 1

    Ove con x° si intende la media campionaria. Con xi si indica invece la i-esima osservazione.

    Ho quindi provato a realizzare il relativo script:

    funzione

    # Funzione per il calcolo della varianza
    #
    # dati n valori (Xi......Xn) si calcola prima la media (Xm) di questi valori nel periodo considerato
    #
    # la varianza è pari a 1/n*sommatoria da 1 a n di (Xi-Xm)^2
    
    INPUTS: @periods(14)
    
    SET valmed = SMA(CLOSE, @periods)
    SET n = @periods
    SET k = SQUARE(CLOSE - valmed)
    SET somma = SUM(k, @periods)
    
    SET Varianza = 1 / n * somma
    indicatore

    INPUTS: @periods(14)
    
    SET PLOT1 = Varianza(@periods)
    Provate a darci un occhiata per vedere se risulta corretto!!!
    Io comunque ci ho provato......

    Beppe

    p.s.

    peccato che i plot possano essere solo a linee e non a istogrammi.....
    Ultima modifica di masterci; 19-11-13 alle 22:25

  2. #2

    Data Registrazione
    Feb 2013
    Località
    Verona/Vicenza
    Messaggi
    154
    Mi ammonisco da solo!!!!

    L'indicatore c'è già e si chiama Variance................

    Vabbè ma io ho voluto fare esercizio ok?!?!?!?!?

    A tal proposito chiedo a Tiziano o Andrea: perchè se plotto il mio indicatore mi restituisce risultati diversi da quello di BT???
    Ho provato sia la formula relativa alla varianza di un campione (con n-1) sia quella relativa alla popolazione (con n) ma entrambi i risultati non coincidono......
    Dove sbaglio?

    Inoltre, perchè voi fate gli indicatori a istogramma e io non posso????

  3. #3

    Data Registrazione
    Dec 2012
    Messaggi
    186
    Citazione Originariamente Scritto da masterci Visualizza Messaggio
    Mi ammonisco da solo!!!!

    L'indicatore c'è già e si chiama Variance................

    Vabbè ma io ho voluto fare esercizio ok?!?!?!?!?

    A tal proposito chiedo a Tiziano o Andrea: perchè se plotto il mio indicatore mi restituisce risultati diversi da quello di BT???
    Ho provato sia la formula relativa alla varianza di un campione (con n-1) sia quella relativa alla popolazione (con n) ma entrambi i risultati non coincidono......
    Dove sbaglio?

    Inoltre, perchè voi fate gli indicatori a istogramma e io non posso????
    l'istogramma lo trovi nelle proprietà della finestra di inserimento dell'indicatore
    Anteprime Allegate Anteprime Allegate Clicca sull'immagine per ingrandirla

Nome: hist.png‎
Visite: 9
Dimensione: 24.1 KB
ID: 12883  

  4. #4
    L'avatar di Andrea Cagalli
    Data Registrazione
    Oct 2010
    Località
    Svizzera
    Messaggi
    3,994
    Citazione Originariamente Scritto da Sig.Bollinger Visualizza Messaggio
    l'istogramma lo trovi nelle proprietà della finestra di inserimento dell'indicatore
    ..e anche in EasyScript Editor
    Anteprime Allegate Anteprime Allegate Clicca sull'immagine per ingrandirla

Nome: 001.PNG‎
Visite: 7
Dimensione: 12.7 KB
ID: 12886   Clicca sull'immagine per ingrandirla

Nome: 002.PNG‎
Visite: 9
Dimensione: 16.1 KB
ID: 12887  

  5. #5

    Data Registrazione
    Feb 2012
    Località
    Pisa
    Messaggi
    351
    Citazione Originariamente Scritto da masterci Visualizza Messaggio
    Mi ammonisco da solo!!!!

    L'indicatore c'è già e si chiama Variance................

    Vabbè ma io ho voluto fare esercizio ok?!?!?!?!?

    A tal proposito chiedo a Tiziano o Andrea: perchè se plotto il mio indicatore mi restituisce risultati diversi da quello di BT???
    Ho provato sia la formula relativa alla varianza di un campione (con n-1) sia quella relativa alla popolazione (con n) ma entrambi i risultati non coincidono......
    Dove sbaglio?
    Ciao Beppe,

    sbagli perchè quando calcoli la varianza a n periodi dovresti usare per n volte lo stesso valore medio da sottrarre;
    mentre invece il vettore "valmed" che hai definito te è sistematicamente composto da n elementi diversi!

  6. #6

    Data Registrazione
    Sep 2013
    Località
    Monza
    Messaggi
    186
    Citazione Originariamente Scritto da Smash Visualizza Messaggio
    Ciao Beppe,

    sbagli perchè quando calcoli la varianza a n periodi dovresti usare per n volte lo stesso valore medio da sottrarre;
    mentre invece il vettore "valmed" che hai definito te è sistematicamente composto da n elementi diversi!
    Ottima osservazione Smash.

    [High]
    INPUTS: @periods(14)

    SET valmed = SMA(CLOSE, @periods)
    SET n = @periods
    SET somma = SUM(SQUARE(CLOSE), @periods) - (SQUARE(valmed)*@periods)

    SET Varianza = 1 / n * somma
    SET PLOT1 = Varianza

    [/High]


    Saluti
    Massimo
    Ultima modifica di maxmax68; 20-11-13 alle 15:50

  7. #7

    Data Registrazione
    Feb 2013
    Località
    Verona/Vicenza
    Messaggi
    154
    Grazie Andrea e sig. Bollinger!!!! Non lo avevo notato!!!

  8. #8

    Data Registrazione
    Feb 2013
    Località
    Verona/Vicenza
    Messaggi
    154
    Citazione Originariamente Scritto da Smash Visualizza Messaggio
    Ciao Beppe,

    sbagli perchè quando calcoli la varianza a n periodi dovresti usare per n volte lo stesso valore medio da sottrarre;
    mentre invece il vettore "valmed" che hai definito te è sistematicamente composto da n elementi diversi!
    Ciao Smash!

    Non mi trovo.......

    Faccio un esempio pratico che forse riesco a capire meglio!

    Prendiamo il calcolo della varianza a 5 periodi di questo campione di 7 elementi:

    1 = 3
    2 = 5
    3 = 9
    4 = 2
    5 = 4
    -------------
    6 = 7
    7 = 5

    la var(5) relativa all'elemento n. 5 prenderà come media gli elementi da 1 a 5: (3+5+9+2+4)/5 = 4.6
    e quindi (sempre riferita all'elemento 5) sarà pari a 1/5 * (3-4.6)^2+(5-4.6)^2+(9-4.6)^2+(2-4.6)^2+(4-4.6)^2 = 27.152

    la var(5) relativa allemente n. 6 prenderà come media gli elementi da 2 a 6: (5+9+2+4+7)/5 = 5.4
    e quindi (sempre riferita all'elemento 6) sarà pari a 1/5 * (5-5.4)^2+(9-5.4)^2+(2-5.4)^2+(4-5.4)^2+(7-5.4)^2 = 29.072
    e così via....

    Quindi il valore di valmed, giustamente, deve variare perchè deve fare la media degli ultimi 5 elementi e spostare in avanti di un elemento la media man mano che procede nell'elemento successivo.....

    Non so se mi sono spiegato!!!!

    Valmed è un vettore che dovrebbe avere al suo interno tante medie dei 5 elementi precedenti....

  9. #9

    Data Registrazione
    Feb 2013
    Località
    Verona/Vicenza
    Messaggi
    154
    Capito l'inghippo!!!!!!

    Grazie Max!

  10. #10

    Data Registrazione
    Feb 2012
    Località
    Pisa
    Messaggi
    351
    Citazione Originariamente Scritto da masterci Visualizza Messaggio
    Ciao Smash!

    Non mi trovo.......

    Faccio un esempio pratico che forse riesco a capire meglio!

    Prendiamo il calcolo della varianza a 5 periodi di questo campione di 7 elementi:

    1 = 3
    2 = 5
    3 = 9
    4 = 2
    5 = 4
    -------------
    6 = 7
    7 = 5

    la var(5) relativa all'elemento n. 5 prenderà come media gli elementi da 1 a 5: (3+5+9+2+4)/5 = 4.6
    e quindi (sempre riferita all'elemento 5) sarà pari a 1/5 * (3-4.6)^2+(5-4.6)^2+(9-4.6)^2+(2-4.6)^2+(4-4.6)^2 = 27.152

    la var(5) relativa allemente n. 6 prenderà come media gli elementi da 2 a 6: (5+9+2+4+7)/5 = 5.4
    e quindi (sempre riferita all'elemento 6) sarà pari a 1/5 * (5-5.4)^2+(9-5.4)^2+(2-5.4)^2+(4-5.4)^2+(7-5.4)^2 = 29.072
    e così via....

    Quindi il valore di valmed, giustamente, deve variare perchè deve fare la media degli ultimi 5 elementi e spostare in avanti di un elemento la media man mano che procede nell'elemento successivo.....

    Non so se mi sono spiegato!!!!

    Valmed è un vettore che dovrebbe avere al suo interno tante medie dei 5 elementi precedenti....

    Il problema è che il vettore valmed lo volevi utilizzare per calcolare questa sommatoria (al posto di x°):

    ...n
    ∑ (xi - x°)²
    ...i = 1


    in questo modo:

    SET k = SQUARE(CLOSE - valmed)
    SET somma = SUM(k, @periods)
    e non poteva andare bene perchè avresti dovuto calcolare la sommatoria di n elementi (xi - x°)² dove gli xi cambiano per n volte mentre gli x° hanno sempre lo stesso valore.

    Nell'esempio numerico che hai citato:
    per la varianza(5) relativa all'elemento n. 5 che prende come media gli elementi da 1 a 5;

    la media è
    (3+5+9+2+4)/5 = 4.6

    mentre la sommatoria richiesta è
    (3 - 4.6)² + (5 - 4.6)² + (9 - 4.6)² + (2 - 4.6)² + (4 - 4.6)²

    Nel tuo codice invece i vettori CLOSE e valmed variano entrambi ad ogni elemento.
    Ultima modifica di Smash; 21-11-13 alle 15:44

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •  
Contattaci

Chiama gli esperti
+39 0425 792923

Chiamaci
Email

Richiedi informazioni via E-MAIL
info@playoptions.it

Scrivici
Nostri Uffici

Vieni a trovarci
45100 Rovigo

Contattaci

Serve Aiuto?

Contattaci per maggiori informazioni.

Denis MorettoSpecialista Finanziario
Contattaci
Questo sito utilizza cookie tecnici e di profilazione. Cliccando su accetta si autorizzano tutti i cookie di profilazione. Cliccando su rifiuta o la X si rifiutano tutti i cookie di profilazione. Cliccando su personalizza è possibile selezionare quali cookie di profilazione attivare.