T O P I C R E V I E W |
jsamu |
Posted - 19 September 2006 : 23:07:43 Vorrei calcolare la volatilità storica ma la funzione stdev mi da errore in quanto mi richiede un array... la formula che uso è la seguente per una vs a 50 periodi:
stdev(log(close / close( - 1)), 50) * 100 * sqr(256)
Non c'è modo di bypassare l'errore? La volatilità proposta dal programma in cosa si differenzia?
Grazie |
2 L A T E S T R E P L I E S (Newest First) |
jsamu |
Posted - 20 September 2006 : 16:51:02 Grazie, disponibile come al solito! 
|
SupportoTecnico |
Posted - 20 September 2006 : 10:01:03 Potresti creare una funzione che calcola la deviazione standard e poi usare il tutto come segue:
function main() return MyStdev(50) * 100 * sqr(256) endfunction
Function MyStdev(lPeriod as Numeric) As Numeric Dim dMyMov As Numeric Dim dVar As Numeric Dim i As Numeric
dMyMov = 0 for i = 0 to lPeriod - 1 dMyMov = dMyMov + log(close( - i) / close( - i - 1)) Next i dMyMov = dMyMov / lPeriod
dVar = 0 For i = 1 to lPeriod dVar = dVar + (dMyMov - log(close(1 - i) / close( - i))) ^ 2 Next i dVar = dVar / lPeriod
Return Sqr(dVar)
EndFunction
|