indicatore Curtosi

Collapse
X
 
  • Ora
  • Show
Clear All
new posts
  • fnet
    Senior Member
    • Aug 2010
    • 738

    #1

    indicatore Curtosi

    .... ho costruito un indicatore "curtosi" sulla falsariga della pari formula che si trova su excel ..

    Click image for larger version

Name:	Capture.PNG
Views:	1
Size:	2.7 KB
ID:	165583


    Click image for larger version

Name:	curtosi.png
Views:	1
Size:	78.4 KB
ID:	165584

    in teoria da quello che ho capito per valori positivi i prezzi dovrebbero essere raggruppati vicini alla deviazione standard mentre per valori negativi il contrario ( lontano dalla deviazione standard ) ...

    di seguito il codice , non garantisco sia corretto .....

    Codice:
    INPUTS: @price(CLOSE), @periods(21)
    
    SET m = AVG(@price, 21)
    SET dv = StandardDeviations(@price, 21, 1, SIMPLE)
    
    SET f1 = 21*(21+1)/(21-1)/(21-2)/(21-3)
    SET f2 = 3*POW(20, 2)/19/18
    
    SET k0 = POW((@price-m)/dv, 4) 
    SET k1 = POW((REF(@price, 1)-m)/dv, 4)
    SET k2 = POW((REF(@price, 2)-m)/dv, 4)
    SET k3 = POW((REF(@price, 3)-m)/dv, 4)
    SET k4 = POW((REF(@price, 4)-m)/dv, 4)
    SET k5 = POW((REF(@price, 5)-m)/dv, 4)
    SET k6 = POW((REF(@price, 6)-m)/dv, 4)
    SET k7 = POW((REF(@price, 7)-m)/dv, 4)
    SET k8 = POW((REF(@price, 8)-m)/dv, 4)
    SET k9 = POW((REF(@price, 9)-m)/dv, 4)
    SET k10 = POW((REF(@price, 10)-m)/dv, 4)
    SET k11 = POW((REF(@price, 11)-m)/dv, 4)
    SET k12 = POW((REF(@price, 12)-m)/dv, 4)
    SET k13 = POW((REF(@price, 13)-m)/dv, 4)
    SET k14 = POW((REF(@price, 14)-m)/dv, 4)
    SET k15 = POW((REF(@price, 15)-m)/dv, 4)
    SET k16 = POW((REF(@price, 16)-m)/dv, 4)
    SET k17 = POW((REF(@price, 17)-m)/dv, 4)
    SET k18 = POW((REF(@price, 18)-m)/dv, 4)
    SET k19 = POW((REF(@price, 19)-m)/dv, 4)
    SET k20 = POW((REF(@price, 20)-m)/dv, 4)
    
    SET Kn0 = k0+k1
    SET Kn1 = Kn0+k2
    SET Kn2 = Kn1+k3
    SET Kn3 = Kn2+k4
    SET Kn4 = Kn3+k5
    SET Kn5 = Kn4+k6
    SET Kn6 = Kn5+k7
    SET Kn7 = Kn6+k8
    SET Kn8 = Kn7+k9
    SET Kn9 = Kn8+k10
    SET Kn10 = Kn9+k11
    SET Kn11 = Kn10+k12
    SET Kn12 = Kn11+k13
    SET Kn13 = Kn12+k14
    SET Kn14 = Kn13+k15
    SET Kn15 = Kn14+k16
    SET Kn16 = Kn15+k17
    SET Kn17 = Kn16+k18
    SET Kn18 = Kn17+k19
    SET Kn19 = Kn18+k20
    
    SET curtosi = f1 * Kn19 - f2
    
    SET PLOT1 = curtosi
    "Tempus omnia medetur" .... e fà guadagnare di Theta
  • Cagalli Tiziano
    Senior Member
    • Dec 2007
    • 11252

    #2
    Originariamente Scritto da fnet
    .... ho costruito un indicatore "curtosi" sulla falsariga della pari formula che si trova su excel ..

    in teoria da quello che ho capito per valori positivi i prezzi dovrebbero essere raggruppati vicini alla deviazione standard mentre per valori negativi il contrario ( lontano dalla deviazione standard ) ...

    di seguito il codice , non garantisco sia corretto .....
    Ottimo lavoro, grazie!

    Per avere un sistema per fare trading avevi già un\'idea?

    La mia sarebbe di incrociare l\'indicatore che hai fatto con la misura di queste asimetrie. La misura si chiama anche skew. Puoi trovare indicazioni qui.

    In questo modo sai se l\'asimetria prefigura un trend long oppure short.
    Il curtosi ti dice che c\'è e lo skew ti dice da che parte.
    ..se corri dietro a due lepri, non ne prendi nemmeno una.

    Comment

    • fnet
      Senior Member
      • Aug 2010
      • 738

      #3
      Originariamente Scritto da Cagalli Tiziano
      Per avere un sistema per fare trading avevi già un\'idea?

      La mia sarebbe di incrociare l\'indicatore che hai fatto con la misura di queste asimetrie. La misura si chiama anche skew. Puoi trovare indicazioni qui.

      In questo modo sai se l\'asimetria prefigura un trend long oppure short.
      Il curtosi ti dice che c\'è e lo skew ti dice da che parte.
      no nessuna idea ...
      .... si avevo già intenzione di costruire anche indicatore skew ....

      P.S.: per cortesia in easyscript c\'è un limite agli addendi nelle somme esempio : a + b + c + ..... o per qualsiasi altra operazione algebrica + - */ ?

      grazie
      fabio
      "Tempus omnia medetur" .... e fà guadagnare di Theta

      Comment

      • Francario Massimiliano
        Administrator
        • Jul 2008
        • 1033

        #4
        Salve,

        Originariamente Scritto da fnet
        no nessuna idea ...
        .... si avevo già intenzione di costruire anche indicatore skew ....

        P.S.: per cortesia in easyscript c\'è un limite agli addendi nelle somme esempio : a + b + c + ..... o per qualsiasi altra operazione algebrica + - */ ?

        grazie
        fabio
        No, non esistono limitazioni da questo punto di vista.
        Suggerisco in ogni caso di utilizzare le parantesi per raggruppare le operazioni, ed eventualmente dividere in più righe le operazioni più complesse, ottenendo in questo modo un codice più semplice da leggere, interpretare e modificare/mantenere.

        Max Francario
        Manuale di beeTrader
        Manuale di Fiuto Beta

        Comment

        • fnet
          Senior Member
          • Aug 2010
          • 738

          #5
          Originariamente Scritto da Francario Massimiliano
          Salve,
          .....

          Max Francario
          grazie Max

          intanto curtosi rivisto

          Codice:
          INPUTS: @price(CLOSE), @periods(21)
          
          
          SET m = AVG(@price, 21)
          SET dv = StandardDeviations(@price, 21, 1, SIMPLE)
          
          
          SET f1 = 21*(21+1)/(21-1)/(21-2)/(21-3)
          SET f2 = 3*POW(20, 2)/19/18
          
          
          SET k0 = POW((@price-m)/dv, 4) 
          SET k1 = POW((REF(@price, 1)-m)/dv, 4)
          SET k2 = POW((REF(@price, 2)-m)/dv, 4)
          SET k3 = POW((REF(@price, 3)-m)/dv, 4)
          SET k4 = POW((REF(@price, 4)-m)/dv, 4)
          SET k5 = POW((REF(@price, 5)-m)/dv, 4)
          SET k6 = POW((REF(@price, 6)-m)/dv, 4)
          SET k7 = POW((REF(@price, 7)-m)/dv, 4)
          SET k8 = POW((REF(@price, 8)-m)/dv, 4)
          SET k9 = POW((REF(@price, 9)-m)/dv, 4)
          SET k10 = POW((REF(@price, 10)-m)/dv, 4)
          SET k11 = POW((REF(@price, 11)-m)/dv, 4)
          SET k12 = POW((REF(@price, 12)-m)/dv, 4)
          SET k13 = POW((REF(@price, 13)-m)/dv, 4)
          SET k14 = POW((REF(@price, 14)-m)/dv, 4)
          SET k15 = POW((REF(@price, 15)-m)/dv, 4)
          SET k16 = POW((REF(@price, 16)-m)/dv, 4)
          SET k17 = POW((REF(@price, 17)-m)/dv, 4)
          SET k18 = POW((REF(@price, 18)-m)/dv, 4)
          SET k19 = POW((REF(@price, 19)-m)/dv, 4)
          SET k20 = POW((REF(@price, 20)-m)/dv, 4)
          
          
          
          
          SET precurtosi = (k0+k1+k2+k3+k4+k5+k6+k7+k8+k9+k10+k11+k12+k13+k14+k15+k16+k17+k18+k19+k20)
          
          
          SET curtosi = f1 * precurtosi - f2
          
          
          SET PLOT1 = curtosi
          e indicatore skew

          Click image for larger version

Name:	Capture.PNG
Views:	1
Size:	7.9 KB
ID:	159597

          Click image for larger version

Name:	CaptureSkew.PNG
Views:	1
Size:	15.8 KB
ID:	159598

          Codice:
          INPUTS: @price(CLOSE), @periods(21)
          
          
          SET m = AVG(@price, 21)
          SET dv = StandardDeviations(@price, 21, 1, SIMPLE)
          
          
          SET f1 = 21/((21-1)*(21-2))
          
          
          SET k0 = POW((@price-m)/dv, 3) 
          SET k1 = POW((REF(@price, 1)-m)/dv, 3)
          SET k2 = POW((REF(@price, 2)-m)/dv, 3)
          SET k3 = POW((REF(@price, 3)-m)/dv, 3)
          SET k4 = POW((REF(@price, 4)-m)/dv, 3)
          SET k5 = POW((REF(@price, 5)-m)/dv, 3)
          SET k6 = POW((REF(@price, 6)-m)/dv, 3)
          SET k7 = POW((REF(@price, 7)-m)/dv, 3)
          SET k8 = POW((REF(@price, 8)-m)/dv, 3)
          SET k9 = POW((REF(@price, 9)-m)/dv, 3)
          SET k10 = POW((REF(@price, 10)-m)/dv, 3)
          SET k11 = POW((REF(@price, 11)-m)/dv, 3)
          SET k12 = POW((REF(@price, 12)-m)/dv, 3)
          SET k13 = POW((REF(@price, 13)-m)/dv, 3)
          SET k14 = POW((REF(@price, 14)-m)/dv, 3)
          SET k15 = POW((REF(@price, 15)-m)/dv, 3)
          SET k16 = POW((REF(@price, 16)-m)/dv, 3)
          SET k17 = POW((REF(@price, 17)-m)/dv, 3)
          SET k18 = POW((REF(@price, 18)-m)/dv, 3)
          SET k19 = POW((REF(@price, 19)-m)/dv, 3)
          SET k20 = POW((REF(@price, 20)-m)/dv, 3)
          
          
          SET preskew = (k0+k1+k2+k3+k4+k5+k6+k7+k8+k9+k10+k11+k12+k13+k14+k15+k16+k17+k18+k19+k20)
          
          
          SET skew = f1 * preskew
          
          
          SET PLOT1 = skew
          "Tempus omnia medetur" .... e fà guadagnare di Theta

          Comment

          Working...