Question

Merci pour le pointeur de na.(rado) (Darren), mise à jour de l'exemple et les résultats ci-dessous:

J'ai les données de tiques, que j'ai roulé en données quotidiennes, afin de calc quotidien de la volatilité.Maintenant que j'ai créé le quotidien de la volatilité, je voudrais fusionner les données quotidiennes avec la tique à nouveau les données.Je soupçonne cependant, la fusion reste "vide" en raison de l'indice de différences du quotidien et les données de tiques.

Comment pourrait-on fusionner les données quotidiennes avec les données de tiques?

Exemple:

    AGL.xts <- xts(AGL_Frame[,-1], order.by=AGL_Frame[,1])
    AGL.xts
                        Close
    2012-01-19 16:46:11 32376
    2012-01-19 16:46:32 32377
    2012-01-19 16:46:32 32376
    2012-01-19 16:46:42 32376
    2012-01-19 16:46:42 32376
    2012-01-19 16:46:42 32376
    2012-01-19 16:46:45 32376
    2012-01-19 16:46:48 32351
    2012-01-19 16:46:54 32351
    2012-01-19 16:46:57 32351
    2012-01-19 16:46:57 32351
    2012-01-19 16:47:14 32351
    2012-01-19 16:47:14 32351
    2012-01-19 16:47:19 32350
    2012-01-19 16:47:32 32349
    2012-01-19 16:47:32 32349



    my.sample1 <- to.daily(AGL.xts[,1],1,'daily')
    my.sample1

                        daily.Open daily.High daily.Low daily.Close
    2011-12-01 17:00:27      31000      31479     30685       31350
    2011-12-05 17:00:28      31225      31700     31015       31645
    2011-12-06 17:00:22      31290      31626     31126       31500
    2011-12-07 17:00:12      31550      31840     31215       31366
    2011-12-08 17:00:09      31350      31875     31200       31200
    2011-12-12 17:00:25      31093      31245     30310       30310
    2011-12-13 17:00:24      30333      30767     30100       30430
    2011-12-14 17:00:12      30210      30500     29575       29700
    2011-12-19 17:00:03      29900      30005     29633       29679


    my.AGL.roc <- ROC(my.sample1[,4])
    my.AGL.sd <- apply.rolling(my.AGL.roc, FUN="sd", width=5)*sqrt(252)
    my.AGL.sd
                        calcs
2011-12-05 17:00:28        NA
2011-12-06 17:00:22        NA
2011-12-07 17:00:12        NA
2011-12-08 17:00:09        NA
2011-12-12 17:00:25 0.2195421
2011-12-13 17:00:24 0.1966806
2011-12-14 17:00:12 0.2240305
2011-12-19 17:00:03 0.2327860
2011-12-20 17:00:28 0.2878848
2011-12-21 17:00:18 0.2275700
2011-12-22 17:00:12 0.2462184
2011-12-28 17:00:00 0.1633643
2011-12-29 17:00:20 0.1800739
2012-01-03 17:00:25 0.4068977
2012-01-04 17:00:13 0.3699694
2012-01-05 17:00:04 0.4014607
2012-01-09 17:00:05 0.4049482
2012-01-10 17:00:17 0.3934479
2012-01-11 17:00:07 0.2391906
2012-01-12 17:00:01 0.2328756
2012-01-16 17:00:02 0.2165803
2012-01-17 17:00:22 0.1910748
2012-01-18 17:00:19 0.1347729
2012-01-19 17:00:09 0.1198476

    merged <- merge(AGL.xts,my.AGL.sd)
    merged <- na.locf(merged)
    merged

                      Close   Calcs    
2012-01-12 12:03:49   31920 0.2391906
2012-01-12 12:03:52   31920 0.2391906
2012-01-12 12:03:54   31920 0.2391906
2012-01-12 12:03:56   31941 0.2391906
2012-01-12 12:04:19   31910 0.2391906
2012-01-12 12:04:21   31910 0.2391906
2012-01-12 12:04:22   31909 0.2391906
2012-01-12 12:04:22   31903 0.2391906
2012-01-12 12:04:22   31910 0.2391906
2012-01-12 12:04:23   31910 0.2391906
2012-01-12 12:04:28   31910 0.2391906
2012-01-12 12:04:28   31910 0.2391906
2012-01-12 12:04:32   31910 0.2391906
2012-01-12 12:04:32   31910 0.2391906
2012-01-12 12:04:33   31909 0.2391906
2012-01-12 12:04:33   31910 0.2391906
2012-01-12 12:04:33   31910 0.2391906
2012-01-12 12:04:33   31910 0.2391906
2012-01-12 12:04:33   31910 0.2391906
2012-01-12 12:04:38   31901 0.2391906

Cela permet d'atteindre mon objectif de l'utilisation d'un indicateur quotidien (5 jours de vol dans ce cas) et en l'appliquant à des tiques à des fins d'analyse.Merci pour les conseils.

Était-ce utile?

La solution

Articles 14.5 et 14.6 dans la R livre de cuisine de démontrer la fusion de l'inflation mensuelle de données quotidiennement données d'IBM, à l'aide de merge (avec all=T ou all=F en fonction de l'objet), na.locf et zoo avec seq pour générer un ensemble de dates (les dates lorsque l'un ou l'autre symbole n'a pas de données).J'ai utilisé la même approche pour créer vierge 1m de bars pour les minutes où il n'y avait pas de tiques, donc je pense qu'il va travailler pour la fusion des quotidiennes et des données tiques trop.

Autres conseils

vous ne savez pas où la fonction apply.rolling vient, mais il ressemble à son un rouleau de déviation standard avec un décalage de 5?

Bien, vous avez que ça ressemble.Il n'existe pas de valeurs pour les cinq premières lignes dans les cvac en raison de la mise en œuvre de apply.rolling.

Mais je serai d'accord avec Joshua...vous ne savez pas exactement ce que vous essayez de faire ici...

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top