Insider 3000 - Forums
Insider 3000 - Forums
Home | Profile | Active Topics | Members | Search | FAQ
 All Forums
 Help
 Aiuti, consigli, dubbi ...
 MM Trinagolare e Bande Polinomiali di tendenza

Note: You must be registered in order to post a reply.

Screensize:
UserName:
Password:
Format Mode:
Format: BoldItalicizedUnderlineStrikethrough Align LeftCenteredAlign Right Horizontal Rule Insert HyperlinkInsert Email Insert CodeInsert QuoteInsert List
   
Message:

* HTML is OFF
* Forum Code is ON
Smilies
Smile [:)] Big Smile [:D] Cool [8D] Blush [:I]
Tongue [:P] Evil [):] Wink [;)] Clown [:o)]
Black Eye [B)] Eight Ball [8] Frown [:(] Shy [8)]
Shocked [:0] Angry [:(!] Dead [xx(] Sleepy [|)]
Kisses [:X] Approve [^] Disapprove [V] Question [?]

   
   

T O P I C    R E V I E W
VpV Posted - 02 February 2011 : 16:30:51
Non ho vulto mescolare (idee Insider4) le cose quindi apro questo.

1)Per caso, prima che mi ci metta, avete già realizzato il codice della MM Triangolare ?

2)E' possibile realizzare le bande polinomiali di tendenza su Insider ? oppure devo trovare, anche qui, una via diversa ?

Ovviamente mi riferisco alle opzioni del foglio di calcolo.

Grazie.
3   L A T E S T    R E P L I E S    (Newest First)
SupportoTecnico Posted - 01 June 2011 : 17:54:29
Se devi utilizzare lo stesso indicatore su una base dati differente puoi sempre utilizzare il metodo dei database esterni e quindi la funzione Dbexp.

Cioè supponendo che MMT sia il nome dell'indicatore utente (media mobile triangolare) una cosa del tipo:

Dbexp(MMT, "MioDatabaseEsterno")

Se invece intendevi calcolare la media mobile triangolare di un indicatore allora la via più semplice è utilizzare il "Select case" come giustamente hai detto.

Ma non devi ricopiare tutto l'algoritmo. Il select case lo puoi mettere all'interno del primo ciclo For:


Function Main()
Dim PeriodoMedia as Numeric
dim i as Numeric
dim TmpMedia as Numeric = 0

    PeriodoMedia = fix(Periodo / 2) + 1
    
    TmpMedia = 0

    Select case TipoDato
    case 1
       for i = 0 to PeriodoMedia - 1
          TmpMedia = TmpMedia + Close( - i)
       Next i
    case 2
       ....
    case ...

    endselect
    
    pMedia01(currentbar) = TmpMedia / PeriodoMedia
    
    TmpMedia = 0
    for i = 0 to PeriodoMedia - 1
        TmpMedia = TmpMedia + pMedia01(currentbar - i)
    Next i
    
    Return TmpMedia / PeriodoMedia
Endfunction


Dove "TipoDato" è una proprietà giustamente creata.
VpV Posted - 01 June 2011 : 17:25:46
Sera,

la triangolare mi serve anche su altre variabili esterne all'indice.

Per evitare di creare un altro indicatore per sottostante, provvederò con il comando select case.

Volevo però sapere se esisteva la possibilità di evitare di copiare pari pari l'algoritmo per ogni caso ovvero cambiare solamente la variabile un pò come avviene per i valori delle mm con il property.

grazie
SupportoTecnico Posted - 02 February 2011 : 19:05:24
1) Il codice per il calcolo della MM Triangolare poteva essere semplicissimo. Purtroppo per ora non è possibile passare espressioni come argomenti (quindi anche variabili) alle funzioni indicatore.

Il codice un po' più elaborato è il seguente:


Dim pMedia01 as numeric() = 0

Property Periodo as Numeric
    Default (12)
EndProperty


Function Main()
Dim PeriodoMedia as Numeric
dim i as Numeric
dim TmpMedia as Numeric = 0

    PeriodoMedia = fix(Periodo / 2) + 1
    
    TmpMedia = 0
    for i = 0 to PeriodoMedia - 1
        TmpMedia = TmpMedia + Close( - i)
    Next i
    pMedia01(currentbar) = TmpMedia / PeriodoMedia
    
    TmpMedia = 0
    for i = 0 to PeriodoMedia - 1
        TmpMedia = TmpMedia + pMedia01(currentbar - i)
    Next i
    
    Return TmpMedia / PeriodoMedia
Endfunction




2) No, al momento le bande polinomiali non ci sono in Insider 3000.


Insider 3000 - Forums © Copyright 2003-2016 Tradersoft s.r.l. Go To Top Of Page
Powered By: Snitz Forums 2000 Version 3.4.07