Exemple #1
0
    def setUp(self):
        """Create data to use for testing."""
        self.close_data = SampleData().get_sample_close_data()
        self.high_data = SampleData().get_sample_high_data()
        self.low_data = SampleData().get_sample_low_data()
        self.volume = SampleData().get_sample_volume()

        self.ad_expected = [
            0.0, 15862.38524593231, -36477.702708130804, -104733.80651442676,
            40104.71949712043, 23939.254528920741, -62106.183239279555,
            112915.24595464926, 39956.002218866488, -260.35553975040239,
            -116475.2497883655, -154687.74497142577, -292093.679550856,
            -133194.90662509997, -263680.69609877974, -299353.08397758257,
            -261929.08397757346, -320893.80364286253, -471609.22532958613,
            -708827.18185129401, -694912.50378286431, -792540.18692894513,
            -777300.311457203, -699904.16262002871, -790925.63820386841,
            -889485.5941157171, -805433.69146085251, -833917.85340419237,
            -833917.85340416594, -883999.91462867253, -1022927.0306024188,
            -1054143.0894259787, -1058939.2259721591, -1021271.5606829068,
            -913860.42762679141, -1035092.7994216527, -935298.84023796313,
            -792598.06027727341, -709809.99197603366, -577648.68356478063,
            -712915.33741098049, -1014517.9000277666, -729489.82981907623,
            -732989.08876652108, -437866.62941692042, -292705.11886841164,
            -208275.03902052308, -57775.565753187257, -41895.022706843985,
            -197234.22345034953, -217259.22123303646, -336135.09482219844,
            -340737.15732219425, -345832.65519452997, -282367.61014945683,
            -503852.77093379293, -542493.46938165138, -293054.95086318324,
            -349241.3657770899, -310266.53503439715, -427254.58609822171,
            -379701.86011959275, -245746.2914921554, -197685.67265809805,
            -201802.46902173068, -174468.61134385251, 12276.114846627315,
            -21316.018077706984, -411927.14032219525, -465339.18257566751,
            -517829.09090903884, -526077.9668780705, -638881.56860968971,
            -535937.62266374112, -422292.58075894287, -585404.44057200733,
            -641343.11799134617, -442699.23563839833, -237900.56329794819,
            -15646.76484828876, 257481.51413010465, 266545.23366587964,
            296702.51703821769, 382165.68335837772, 433020.58124570741,
            559763.67215474963, 556301.17746264767, 683881.16259275773,
            671412.22763338394, 702418.43452995166, 1269915.1092287663,
            1369598.1903099443, 1813632.4712087966, 1418193.9507626847,
            1357868.9773113495, 1173146.9130543284, 1370686.1802957729,
            1559763.227204062, 1799516.493737207, 1532620.7033441989,
            1699573.5379898732, 1690914.5457118889, 2050665.8326683058,
            2199638.0771572837, 2242714.9091572445, 2255814.5304043461,
            2304978.8473854959, 2178583.2490768656, 2209187.1812126297,
            2279663.6510112993, 2416336.1883247532, 2392955.8321879292,
            2448552.5321879075, 2399441.1061789142, 2494347.2758041751,
            2406478.6085073589, 2498297.9406373627, 2479423.9027995183,
            2386354.6797225843, 2295492.9138876535, 2280017.0204450153,
            2238485.2116801129, 2242266.9907233468, 2141284.6836367347,
            2083933.3361190266, 2027200.0996044902, 1922004.9567473496
        ]
Exemple #2
0
    def setUp(self):
        """Create data to use for testing."""
        self.close_data = SampleData().get_sample_close_data()
        self.high_data = SampleData().get_sample_high_data()
        self.low_data = SampleData().get_sample_low_data()
        self.volume = SampleData().get_sample_volume()

        self.mf_expected = [
            1203861240.8599999, 1553716404.8666668, 1694259812.96,
            2662913259.9299998, 1103809271.55, 2054975406.8199999,
            1252707685.0466664, 1522731247.6133335, 897474013.69333339,
            1079485789.7, 866177879.22666669, 954220671.06666672,
            1090016254.4833333, 1088561820.8399999, 833822262.0,
            825998757.75999987, 829289393.70666659, 781406052.61333323,
            973755157.96000004, 1390664966.8599999, 1057136293.2866668,
            784041982.43666673, 1062708520.3800001, 1089529128.51,
            955801301.51666665, 982531236.06000018, 1146923211.8, 788836827.12,
            1053134844.4499999, 1071889105.8999999, 1010837958.1466668,
            1097007225.5999999, 899531907.94666684, 1004931373.25,
            1300262999.5999999, 1088440513.75, 1240619581.3,
            1354530117.7133334, 1758135238.4100001, 1579976044.0666666,
            2773031331.8400002, 3023099141.4633331, 2828683285.5900002,
            1362235555.3733335, 1379509305.4166667, 2019980276.5133333,
            1082089890.5766666, 894367885.18000007, 846860834.25999987,
            1184169350.1166668, 1067126734.6266667, 1109440058.9599998,
            1069389730.9200001, 963469816.14666665, 1132770199.5866666,
            1637795356.4633331, 1085315009.8, 1233339463.23,
            1568715265.0799997, 1393974485.8966668, 847397473.43999994,
            975104887.13333333, 780912741.09333336, 615466230.10000002,
            908691541.62, 1182337603.4133334, 1030839973.4499999,
            1014268044.8266666, 2118621551.8600001, 1444090704.0,
            1448859443.4733334, 1702113981.8666663, 1295547462.3266666,
            1519551983.0699999, 1291809334.3066666, 1604462263.7166667,
            1367822609.2200003, 1348448307.26, 1354954842.8266668,
            2301419413.6266665, 1840989433.813333, 1262096267.8099997,
            2052241573.9733334, 485425652.6566667, 1036961757.5766666,
            1103874442.4733334, 1297856545.8166668, 1432535936.6399999,
            1213620641.7533331, 1427130539.7333331, 2344130494.0299997,
            2939222433.3399997, 2872064994.6299996, 4744647777.8299999,
            2495715536.2333331, 1417667030.7366667, 1605626189.8000002,
            1590079560.7, 1757610781.6000001, 1900954009.5466666,
            1902051350.4000001, 1805887362.3633335, 3513534927.48,
            2370363923.0, 1433884147.8399999, 1512777578.3199999,
            1159366702.0800002, 1278857534.4866664, 1067430292.2333332,
            1142958189.8, 1734217438.9833336, 800257863.29666674,
            844187705.69333327, 1032845968.5299999, 687174370.65333331,
            1297206762.5, 1126704258.3, 856233938.33999991, 809474362.18666673,
            885615210.20000005, 922039906.18000007, 1083024462.9599998,
            1191653539.7766666, 954953607.9466666, 1042492232.1333334,
            963866806.58999991, 1046194449.0533333
        ]
Exemple #3
0
    def setUp(self):
        """Create data to use for testing."""
        self.close_data = SampleData().get_sample_close_data()
        self.high_data = SampleData().get_sample_high_data()
        self.low_data = SampleData().get_sample_low_data()

        self.tp_expected = [
            792.42999999999995, 802.86666666666667, 804.61333333333334,
            809.96999999999991, 807.61666666666667, 809.68999999999994,
            812.28666666666652, 815.05666666666673, 812.59666666666669,
            809.88666666666677, 815.84666666666669, 817.94666666666672,
            815.52333333333343, 807.71999999999991, 809.66666666666663,
            795.22666666666657, 791.40333333333331, 776.2733333333332,
            778.42000000000007, 764.65999999999997, 764.31333333333339,
            776.02333333333343, 789.42000000000007, 785.71000000000004,
            780.31666666666661, 779.13000000000011, 784.9133333333333,
            784.84666666666669, 775.96999999999991, 786.21999999999991,
            780.14333333333343, 775.19999999999993, 753.2266666666668,
            771.70333333333338, 780.18666666666661, 805.73000000000002,
            811.87333333333333, 801.88666666666666, 781.03000000000009,
            782.09666666666669, 788.48000000000002, 805.62333333333333,
            809.75666666666666, 819.56333333333339, 817.06333333333339,
            822.00666666666666, 828.43666666666661, 835.50333333333344,
            824.03666666666652, 821.82333333333338, 827.11333333333334,
            821.61999999999989, 806.84666666666669, 804.60666666666668,
            803.99666666666656, 811.95666666666659, 809.61333333333334,
            813.90333333333331, 800.75999999999988, 803.03666666666675,
            801.40333333333331, 802.7166666666667, 800.14666666666665,
            803.9666666666667, 802.64666666666665, 810.02666666666664,
            810.48333333333323, 802.69333333333327, 815.21000000000004, 816.0,
            805.07666666666671, 799.78666666666652, 795.49666666666656,
            797.88999999999999, 801.10666666666657, 790.60333333333335,
            788.78000000000009, 798.62, 788.29333333333341, 802.70666666666659,
            807.78666666666652, 808.00999999999988, 796.85333333333335,
            791.17666666666673, 789.77666666666664, 791.77666666666664,
            795.82333333333338, 793.09333333333325, 791.31333333333316,
            793.57333333333327, 796.26999999999998, 796.90999999999997,
            799.42999999999995, 802.87, 805.45666666666659, 801.36333333333334,
            805.80666666666673, 806.89999999999998, 808.01666666666677,
            808.6633333333333, 807.36000000000001, 805.23666666666668,
            806.80333333333328, 797.16666666666663, 798.88, 800.11000000000001,
            800.88000000000011, 791.46333333333325, 765.80333333333328,
            761.89999999999998, 757.54333333333341, 757.55666666666673,
            759.20666666666659, 754.46333333333325, 756.90333333333331, 753.5,
            753.0866666666667, 735.65999999999997, 735.94666666666672,
            729.61000000000001, 732.53000000000009, 727.24666666666656,
            717.77666666666664, 707.38666666666666, 709.04333333333341,
            704.95666666666659, 710.37666666666667
        ]
    def setUp(self):
        """Create data to use for testing."""
        self.high_data = SampleData().get_sample_high_data()
        self.low_data = SampleData().get_sample_low_data()
        self.close_data = SampleData().get_sample_close_data()

        self.wpr_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, -41.351174934725954, -55.186104218362054,
            -91.39978409499827, -90.93750000000007, -95.17581475128647,
            -90.80188679245268, -96.55825159180864, -95.7276595744681,
            -76.06808510638307, -52.98723404255318, -59.200000000000145,
            -68.71489361702129, -69.5767664246503, -54.11718131433104,
            -54.5130641330168, -60.59593428014483, -24.76043276661519,
            -39.94708994708984, -55.88624338624351, -93.99806389157787,
            -49.152952565343604, -28.484995159728946, -4.442508710801317,
            -3.6045962537383356, -19.26648827325675, -52.21155359672591,
            -50.49582874232637, -40.68943806075875, -13.835983000157354,
            -6.878640012592486, -3.342696629213634, -6.446629213483186,
            -3.030303030303054, -3.9838056680162532, -3.6058491193086755,
            -23.17215994646148, -27.237744687970515, -18.102727120628977,
            -27.471975907645916, -53.56896551724127, -64.37959025898712,
            -92.10454669207708, -71.16798257555125, -77.15763680914758,
            -64.63381432071876, -93.60845495722175, -87.64469048817293,
            -92.29994967287354, -85.19705222685037, -90.90909090909098,
            -79.37304075235132, -80.46934140802432, -32.799145299145785,
            -29.220085470085575, -72.3824786324789, -14.10319410319411,
            -12.173086067522343, -64.0989063242988, -87.93427230046976,
            -91.49188761377135, -81.2821527502967, -68.38148001582898,
            -91.93706981317588, -91.68975069252063, -60.603262542320515,
            -91.9473361910594, -47.97917942437224, -32.210655235762374,
            -32.11879975505211, -66.2584200857318, -77.56669361358144,
            -83.83185125303153, -75.46483427647561, -59.700889248180985,
            -70.21018593371058, -77.97089733225575, -68.6742118027486,
            -56.58852061438963, -55.133387227162416, -46.179822710004345,
            -33.09413254537785, -21.823554242296584, -33.22429906542013,
            -10.934579439251966, -9.519533004041339, -10.29684601113135,
            -11.496844003606673, -16.05049594229014, -26.19477006311974,
            -20.757575757575875, -79.16188289322615, -73.85740402193801,
            -66.54478976233992, -61.54783668494777, -90.03656307129769,
            -94.63986599664979, -95.44835635090443, -94.94931531211091,
            -95.18050862528892, -92.05050684687885, -96.26606460576593,
            -91.51109545614645, -95.68283453732373, -94.47783621337331,
            -96.13314447592064, -95.89235127478757, -96.84678791050638,
            -91.85872493265498, -94.39467034229254, -95.4657873042046,
            -95.83776124690043, -92.80906836698539, -96.07076033339013,
            -86.48934296283254
        ]
Exemple #5
0
    def setUp(self):
        """Create data to use for testing."""
        self.data = SampleData().get_sample_close_data()

        self.aroon_up_expected = [np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, 
        np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, 
        np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, 48.0, 44.0, 40.0, 
        36.0, 32.0, 28.000000000000004, 24.0, 20.0, 16.0, 12.0, 8.0, 4.0, 4.0, 96.0, 92.0, 
        88.0, 84.0, 80.0, 76.0, 100.0, 96.0, 100.0, 100.0, 100.0, 96.0, 92.0, 88.0, 84.0, 
        80.0, 76.0, 72.0, 68.0, 64.0, 60.0, 56.000000000000007, 52.0, 48.0, 44.0, 40.0, 
        36.0, 32.0, 28.000000000000004, 24.0, 20.0, 16.0, 12.0, 8.0, 4.0, 12.0, 8.0, 4.0, 
        4.0, 72.0, 68.0, 64.0, 60.0, 56.000000000000007, 52.0, 48.0, 44.0, 40.0, 36.0, 
        32.0, 28.000000000000004, 24.0, 20.0, 16.0, 12.0, 8.0, 4.0, 48.0, 44.0, 40.0, 
        36.0, 100.0, 100.0, 96.0, 92.0, 88.0, 84.0, 80.0, 76.0, 72.0, 68.0, 64.0, 60.0, 
        56.000000000000007, 52.0, 48.0, 44.0, 40.0, 36.0, 32.0, 28.000000000000004, 24.0, 
        20.0, 16.0, 12.0, 8.0, 4.0, 4.0, 8.0, 4.0]

        self.aroon_down_expected = [np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, 
        np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, 
        np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, 84.0, 80.0, 76.0, 72.0, 
        68.0, 64.0, 60.0, 56.000000000000007, 100.0, 96.0, 92.0, 88.0, 84.0, 80.0, 76.0, 
        72.0, 68.0, 64.0, 60.0, 56.000000000000007, 52.0, 48.0, 44.0, 40.0, 36.0, 32.0, 
        28.000000000000004, 24.0, 20.0, 16.0, 12.0, 8.0, 4.0, 4.0, 4.0, 16.0, 12.0, 8.0, 
        4.0, 4.0, 4.0, 88.0, 84.0, 80.0, 76.0, 72.0, 68.0, 100.0, 100.0, 96.0, 92.0, 100.0, 
        100.0, 96.0, 100.0, 96.0, 92.0, 88.0, 84.0, 80.0, 76.0, 72.0, 68.0, 64.0, 60.0, 
        56.000000000000007, 52.0, 48.0, 44.0, 40.0, 36.0, 32.0, 28.000000000000004, 24.0, 
        20.0, 16.0, 12.0, 8.0, 4.0, 24.0, 20.0, 16.0, 12.0, 8.0, 100.0, 100.0, 100.0, 100.0, 
        96.0, 100.0, 96.0, 100.0, 100.0, 100.0, 96.0, 100.0, 96.0, 100.0, 100.0, 100.0, 96.0, 
        100.0, 96.0]
Exemple #6
0
    def setUp(self):
        """Create data to use for testing."""
        self.data = SampleData().get_sample_close_data()

        self.aroon_up_period_6_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, 0.0, 0.0, 0.0, 0.0, 0.0,
            0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 100.0, 100.0, 0.0, 100.0, 100.0,
            100.0, 0.0, 0.0, 0.0, 0.0, 0.0, 100.0, 100.0, 0.0, 0.0, 0.0, 0.0,
            0.0, 100.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 100.0, 0.0, 0.0, 0.0,
            0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 100.0, 0.0, 0.0, 100.0, 100.0,
            0.0, 0.0, 0.0, 0.0, 0.0, 100.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
            0.0, 0.0, 0.0, 0.0, 100.0, 100.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
            0.0, 0.0, 0.0, 0.0, 100.0, 100.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
            0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 100.0, 100.0,
            0.0, 100.0, 0.0, 0.0, 0.0, 100.0, 100.0, 100.0, 100.0, 0.0, 0.0,
            100.0, 0.0, 100.0, 100.0, 100.0, 0.0, 100.0, 0.0, 100.0, 100.0
        ]

        self.aroon_up_period_14_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, 0.0, 0.0, 0.0, 0.0, 0.0,
            0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 100.0, 100.0, 0.0, 100.0, 100.0,
            100.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
            0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
            0.0, 0.0, 0.0, 0.0, 0.0, 100.0, 0.0, 0.0, 100.0, 100.0, 0.0, 0.0,
            0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
            0.0, 0.0, 100.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
            0.0, 100.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
            0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 100.0, 100.0, 0.0, 100.0, 0.0, 0.0,
            0.0, 100.0, 100.0, 100.0, 100.0, 0.0, 0.0, 100.0, 0.0
        ]

        self.aroon_down_period_6 = [
            np.nan, np.nan, np.nan, np.nan, np.nan, 100.0, 100.0, 100.0, 0.0,
            100.0, 100.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
            0.0, 0.0, 0.0, 0.0, 100.0, 100.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
            0.0, 0.0, 0.0, 0.0, 100.0, 100.0, 100.0, 0.0, 0.0, 0.0, 100.0,
            100.0, 100.0, 100.0, 100.0, 0.0, 100.0, 0.0, 0.0, 0.0, 0.0, 0.0,
            0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 100.0,
            0.0, 100.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
            0.0, 0.0, 100.0, 0.0, 0.0, 0.0, 0.0, 0.0, 100.0, 0.0, 0.0, 0.0,
            100.0, 100.0, 100.0, 100.0, 100.0, 0.0, 0.0, 100.0, 0.0, 0.0, 0.0,
            0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
            0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0
        ]

        self.aroon_down_period_14 = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, 100.0, 100.0, 0.0, 0.0,
            0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
            0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
            0.0, 0.0, 100.0, 100.0, 100.0, 0.0, 0.0, 0.0, 100.0, 100.0, 100.0,
            0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
            0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
            0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 100.0, 0.0,
            0.0, 0.0, 0.0, 0.0, 100.0, 0.0, 0.0, 0.0, 100.0, 100.0, 100.0,
            100.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
            0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0
        ]
Exemple #7
0
class TestOnBalanceVolume(unittest.TestCase):
    def setUp(self):
        """Create data to use for testing."""
        self.close_data = SampleData().get_sample_close_data()
        self.volume = SampleData().get_sample_volume()

        self.obv_expected = [
            1.0, 1935212.0, 4040894.0, 7328563.0, 5961814.0, 8499792.0,
            10041991.0, 11910243.0, 10805791.0, 9472906.0, 10534598.0,
            11701203.0, 10364618.0, 9016921.0, 10046755.0, 9008059.0,
            7960187.0, 6953575.0, 8204513.0, 6385842.0, 5002723.0, 6013056.0,
            7359245.0, 5972564.0, 4747675.0, 3486613.0, 4947823.0, 3942739.0,
            2585554.0, 3948899.0, 2653191.0, 1238063.0, 43825.0, 1346050.0,
            3012655.0, 4363530.0, 5891625.0, 4202446.0, 1951399.0, 3971579.0,
            7488512.0, 11241009.0, 14734260.0, 16396408.0, 14708033.0,
            17165410.0, 18471593.0, 19542047.0, 18514349.0, 17073444.0,
            18363626.0, 17013318.0, 15687924.0, 14490482.0, 13081558.0,
            15098655.0, 13758120.0, 15273459.0, 13314426.0, 15050305.0,
            13992913.0, 15207669.0, 14231707.0, 14997244.0, 13865125.0,
            15324753.0, 16596636.0, 15333055.0, 17931921.0, 19701640.0,
            17901986.0, 15773776.0, 14145174.0, 16049637.0, 17662168.0,
            15632753.0, 13898654.0, 15587127.0, 13868281.0, 16735355.0,
            19014409.0, 20576390.0, 18000958.0, 17387409.0, 16074428.0,
            17468602.0, 19099437.0, 17293173.0, 15759494.0, 17557854.0,
            20501743.0, 24190017.0, 27782658.0, 33692267.0, 36790777.0,
            35021708.0, 37014278.0, 38984881.0, 41160097.0, 43510833.0,
            41154943.0, 38912264.0, 43267148.0, 40293662.0, 42088530.0,
            43979242.0, 45426858.0, 43811044.0, 42417174.0, 40917032.0,
            38627767.0, 37571400.0, 38683334.0, 37314353.0, 38222229.0,
            36500654.0, 35004539.0, 33840640.0, 34940549.0, 33726729.0,
            34985435.0, 33496223.0, 31836022.0, 30486048.0, 31956328.0,
            30589057.0, 32061789.0
        ]

    def test_obv(self):
        obv = on_balance_volume.on_balance_volume(self.close_data, self.volume)
        np.testing.assert_array_equal(obv, self.obv_expected)

    def test_obv_invalid_data(self):
        self.close_data.append(0)
        with self.assertRaises(Exception) as cm:
            on_balance_volume.on_balance_volume(self.close_data, self.volume)
        expected = "Error: mismatched data lengths, check to ensure that all input data is the same length and valid"
        self.assertEqual(str(cm.exception), expected)
Exemple #8
0
    def setUp(self):
        """Create data to use for testing."""
        self.data = SampleData().get_sample_close_data()

        self.wpr_expected = [
            -33.083683607183765, -25.112724493695076, -23.821169277798969,
            -19.724875811998512, -21.352693924340887, -19.915934275888464,
            -17.990064959877692, -15.697363393198287, -17.760794803209787,
            -19.79365685899883, -15.353458158196428, -13.641574321742469,
            -15.590370653419928, -21.276270538784889, -20.091708062667145,
            -31.004967520061172, -33.832632785632384, -45.517768437141804,
            -43.95873137179975, -54.474589224302605, -54.573939625525384,
            -45.747038593809705, -35.384027512418761, -38.173481085212103,
            -42.44554833779133, -43.362628964463127, -38.777225831104317,
            -38.930072602216313, -45.678257546809306, -37.890714558654977,
            -42.613679786014508, -46.297286969812781, -63.064577760794784,
            -48.903324417271683, -42.376767290791015, -23.041650745127988,
            -18.158196408100867, -25.762323270920923, -41.757737867787526,
            -40.924722965227318, -36.163546045089831, -23.125716469239578,
            -19.747802827665286, -12.365303782957632, -14.054260603744734,
            -10.424149789835678, -5.4948414214750123, -0.0,
            -8.9262514329385247, -10.783339701948805, -6.6106228505922626,
            -10.890332441727168, -22.086358425678238, -23.798242262132195,
            -24.195643867023282, -18.318685517768454, -19.999999999999964,
            -16.484524264424948, -26.771111960259812, -24.959877722583084,
            -26.373710355368729, -25.181505540695483, -27.02330913259458,
            -24.21092854413455, -25.296140619029433, -19.625525410775744,
            -19.113488727550621, -25.288498280473842, -15.880779518532648,
            -15.124188001528438, -23.469621704241522, -27.481849445930479,
            -30.836836071837993, -28.865112724493674, -26.373710355368729,
            -34.604508979747777, -35.934275888421837, -28.21551394726783,
            -36.117692013756198, -25.143293847917441, -21.207489491784482,
            -21.184562476117712, -29.705769965609473, -33.886129155521608,
            -35.070691631639264, -33.488727550630529, -30.508215513947228,
            -32.495223538402733, -33.962552541077606, -32.204814673290009,
            -29.919755445166196, -29.644631257164662, -27.581199847153247,
            -25.212074894917848, -23.17157050057321, -26.404279709591094,
            -22.758884218570856, -21.925869316010736, -21.047000382116895,
            -20.825372564004581, -21.597248758119974, -23.316774933129526,
            -22.017577378677917, -29.415361100496757, -28.139090561711917,
            -27.22200993504012, -26.595338173481046, -33.931983186855149,
            -53.419946503630086, -56.377531524646521, -59.679021780664897,
            -59.778372181887676, -58.433320596102419, -62.155139472678655,
            -60.114635078333933, -62.919373328238457, -63.079862437905966,
            -76.507451280091715, -76.377531524646571, -81.207489491784472,
            -78.891860909438279, -82.949942682460787, -90.149025601834182,
            -98.188765762323271, -96.881925869315978, -100.0,
            -95.903706534199458
        ]
    def setUp(self):
        """Create data to use for testing."""
        self.volume = SampleData().get_sample_volume()

        self.vo_short_6_long_12_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, -22.451875730726861, -23.757758116249278,
            -26.714997099725323, -23.347706322796604, -16.561899562222742,
            -15.109395228570992, -8.5248707938068691, -7.8728930409015341,
            -1.0816061761979803, 1.8258298278830958, 3.6999020736683557,
            5.7401361861216254, 9.2555754838608983, 9.7252122699808297,
            2.8345352780593793, 0.94810594087582578, 1.1022413182956203,
            -0.77199077125778903, -3.2967779477419383, -2.6787862061060701,
            1.8400272908980326, -0.38950327953981229, 1.5545690806294965,
            3.3962579142126899, 3.4722574302939875, 4.404558798476133,
            5.012707713214783, 12.385173784930396, 13.985996383818646,
            20.001691791190236, 28.426377916268358, 32.826997409438263,
            31.324000021551672, 24.47921621547594, 22.397969136554348,
            7.4992944340013121, -11.651444017845709, -28.959933483763962,
            -29.995910779627149, -30.496356837608129, -37.764938273370333,
            -31.351298792413658, -20.952451037992937, -6.9611196030975302,
            -2.2846260245607377, 0.27216598126598429, 8.0967690232952894,
            11.411163969073117, 13.316560598103122, 9.1398157318990361,
            1.3415071810522645, -1.060582249648085, -6.6381199627693874,
            -15.666192708768961, -20.331516907797699, -17.059061754339879,
            -12.453914962638715, 0.19618318021117476, 10.388282501727039,
            19.253098390986288, 24.238370064827087, 24.259337956590208,
            26.530883360901026, 12.162348984031016, 7.8018577023731286,
            4.1224630319134921, -1.0934928194298177, -2.2892415998402664,
            -0.76267617582863878, 6.3634416717688156, 3.2530451496971859,
            6.9686760636509106, 4.5843839510525095, 2.3849047063786757,
            -8.945679715764399, -15.079987478226228, -11.878960826732603,
            -20.967049340821912, -10.144224206934217, -0.46094343430505308,
            15.835661058344726, 25.659004830636157, 35.185163644313221,
            43.446792961032159, 37.816100873129827, 28.703729914306741,
            15.540599710036176, 4.8095826955027041, -18.61413935942052,
            -25.017408786178496, -23.216107065345209, -12.95937111741603,
            -5.4048087826867004, -2.5555684895047124, 7.7869365015416605,
            7.6511304919125989, 3.6432295380458077, -16.312508436416646,
            -26.09553840863893, -22.644534929123516, -25.323278478661944,
            -24.235134224134992, -23.496952948246768, -14.892311899618676,
            -6.5584987474459995, -13.901875741526798, -8.9770587720563171,
            -7.2285979215158465, -6.8450251605742878, -1.7329552316140595,
            -4.5392043434714502, 1.4335636113745385, 1.9027784142633766,
            4.2210794350907141, 6.1266740243960589, 5.104161409770418
        ]
    def setUp(self):
        """Create data to use for testing."""
        self.data = SampleData().get_sample_close_data()

        self.lwma_period_6_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, 807.08190476190487,
            809.26714285714286, 811.36904761904759, 812.11285714285714,
            811.71904761904773, 812.9895238095238, 814.52619047619066,
            814.94333333333338, 813.08523809523808, 812.01761904761918,
            807.01523809523803, 801.65428571428561, 793.07619047619039,
            787.06714285714281, 778.89428571428573, 772.75285714285724,
            772.05999999999995, 776.16000000000008, 779.3138095238096,
            780.41285714285721, 781.07476190476189, 782.75857142857149,
            783.40095238095228, 781.09571428571439, 782.34333333333325,
            781.80761904761903, 779.90523809523802, 771.91714285714284,
            770.73666666666668, 772.61761904761897, 781.5214285714286,
            791.3257142857143, 796.76333333333332, 794.94142857142856,
            792.10333333333324, 790.54809523809536, 793.48000000000013,
            797.67999999999995, 804.7390476190476, 810.33190476190487,
            815.5557142857142, 820.72190476190463, 826.03142857142859,
            826.56285714285718, 825.72571428571416, 826.34999999999991,
            824.91047619047629, 819.3142857142858, 814.11190476190473,
            810.24380952380966, 809.52428571428561, 808.64571428571435,
            809.91571428571422, 807.68857142857144, 806.43047619047627,
            804.71619047619049, 803.58333333333337, 802.18952380952373,
            802.28476190476192, 802.45571428571429, 804.65476190476193,
            806.71285714285705, 806.00999999999999, 808.83095238095245,
            811.2404761904761, 809.96380952380946, 807.07333333333338,
            803.41809523809513, 801.23047619047622, 800.19714285714281,
            796.74047619047633, 794.00047619047609, 794.9228571428572,
            792.93666666666672, 795.38238095238091, 799.06761904761913,
            802.43952380952373, 801.78952380952387, 799.18857142857144,
            796.49809523809517, 794.33380952380946, 793.8038095238096,
            793.11047619047622, 792.57333333333338, 792.9585714285713,
            794.09333333333325, 795.00999999999999, 796.4585714285713,
            798.61047619047622, 801.07142857142856, 801.6514285714286,
            803.23285714285714, 804.67952380952386, 805.97380952380956,
            806.94380952380948, 807.35190476190473, 807.01904761904768,
            806.97952380952381, 804.1280952380954, 802.22047619047612,
            801.09761904761899, 800.6076190476191, 797.68619047619052,
            788.14047619047619, 779.4457142857143, 771.19666666666672,
            764.87571428571425, 761.0861904761905, 757.88904761904757,
            757.21333333333337, 755.90619047619043, 754.9466666666666,
            749.17904761904754, 744.50238095238092, 739.13809523809527,
            735.8266666666666, 732.16809523809525, 727.0661904761904,
            720.64523809523803, 716.06380952380948, 711.59428571428566,
            709.8271428571428
        ]

        self.lwma_period_8_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            809.88111111111118, 811.13916666666671, 811.24916666666672,
            812.4569444444445, 813.85472222222222, 814.46472222222224,
            813.21194444444461, 812.35305555555556, 808.39722222222235,
            804.17555555555555, 797.14027777777778, 791.49333333333323,
            783.82833333333338, 777.61861111111114, 775.39250000000004,
            777.06916666666666, 778.49055555555549, 778.93027777777775,
            779.41638888888895, 781.15750000000003, 782.66583333333335,
            781.64694444444444, 782.56916666666666, 781.83249999999998,
            780.28749999999991, 774.16222222222211, 772.9041666666667,
            773.74527777777769, 780.33944444444444, 787.77611111111105,
            792.00138888888898, 791.13472222222219, 790.47916666666663,
            791.01277777777773, 794.3597222222221, 797.75194444444458,
            802.46833333333336, 806.30555555555543, 811.04916666666668,
            816.66861111111109, 822.56777777777768, 824.38388888888881,
            824.67000000000007, 825.7208333333333, 825.04972222222227,
            821.06944444444446, 816.88333333333344, 813.06777777777779,
            811.64083333333338, 810.39083333333338, 810.56555555555553,
            807.95638888888891, 806.60666666666668, 805.35722222222228,
            804.61027777777781, 803.37805555555553, 803.06638888888892,
            802.65333333333331, 804.08166666666659, 805.77305555555552,
            805.39055555555558, 807.75555555555547, 809.95916666666665,
            809.37055555555571, 807.48611111111109, 804.74499999999989,
            802.7786111111111, 801.87249999999995, 798.8369444444445,
            795.75333333333344, 795.64305555555575, 793.71083333333331,
            795.42944444444447, 798.20749999999998, 800.64222222222224,
            800.32000000000005, 798.90333333333331, 797.11611111111108,
            795.75750000000005, 795.45722222222219, 794.3752777777778,
            793.13388888888892, 792.86722222222215, 793.66555555555567,
            794.55166666666673, 795.88361111111112, 797.63222222222214,
            799.67333333333329, 800.50777777777773, 802.18083333333334,
            803.68888888888898, 805.07888888888874, 806.21083333333343,
            806.79777777777781, 806.66722222222222, 806.84555555555551,
            804.83083333333332, 803.29666666666662, 802.22472222222223,
            801.52749999999992, 798.89861111111111, 791.07944444444456,
            783.55694444444453, 776.27611111111116, 770.33527777777772,
            765.88916666666671, 761.46194444444438, 758.89777777777772,
            756.73638888888888, 755.58194444444439, 750.87416666666672,
            746.93583333333345, 742.19999999999993, 738.91638888888883,
            735.19638888888892, 730.13888888888891, 723.83527777777772,
            719.19361111111118, 714.87388888888881, 712.59916666666663
        ]

        self.lwma_period_10_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, 810.30218181818191, 811.7467272727273, 813.17672727272725,
            813.87018181818178, 813.01509090909099, 812.47872727272727,
            809.31600000000003, 805.74436363636369, 799.76963636363644,
            794.87527272727277, 788.10236363636363, 782.13090909090909,
            779.19254545454555, 779.48345454545461, 779.58163636363645,
            779.06545454545449, 778.86290909090906, 780.04527272727273,
            781.3089090909092, 780.81036363636372, 782.20545454545459,
            782.08236363636377, 780.79836363636355, 775.53836363636367,
            774.30600000000004, 774.88163636363629, 780.05563636363627,
            785.90800000000002, 789.46072727272724, 788.89472727272721,
            788.43363636363642, 789.17745454545445, 792.86963636363635,
            796.81418181818185, 801.48454545454535, 804.88381818181824,
            808.47290909090918, 812.9345454545454, 818.40218181818182,
            821.13327272727258, 822.64145454545451, 824.42527272727273,
            824.48781818181817, 821.59563636363634, 818.3518181818182,
            815.28545454545463, 813.85854545454549, 812.21945454545471,
            811.76181818181806, 809.24909090909102, 807.59181818181821,
            805.9354545454546, 805.03290909090913, 804.03218181818193,
            803.81799999999998, 803.35545454545456, 804.2681818181818,
            805.33381818181817, 804.90927272727265, 806.93236363636356,
            808.87636363636375, 808.60090909090911, 807.30181818181802,
            805.25927272727279, 803.77654545454561, 802.99727272727273,
            800.28545454545451, 797.61363636363637, 797.17836363636354,
            794.93272727272733, 795.77945454545454, 797.80090909090916,
            799.774, 799.56999999999994, 798.34454545454537,
            796.95672727272733, 796.1521818181817, 796.03018181818186,
            795.3063636363637, 794.33527272727281, 793.73109090909088,
            793.83854545454551, 794.21872727272728, 795.29109090909094,
            796.87654545454541, 798.74109090909076, 799.55345454545454,
            801.0645454545454, 802.58945454545449, 804.072, 805.30000000000018,
            806.07363636363641, 806.2401818181819, 806.56527272727271,
            804.99799999999993, 803.83436363636361, 803.00709090909095,
            802.34836363636373, 800.03545454545463, 793.37181818181818,
            786.77472727272732, 780.23800000000006, 774.58363636363629,
            770.11672727272719, 765.6307272727272, 762.40909090909099,
            759.28090909090906, 756.96381818181817, 752.32018181818182,
            748.72036363636357, 744.51763636363637, 741.45654545454545,
            737.88709090909083, 733.15618181818172, 727.26709090909083,
            722.54618181818182, 717.95818181818174, 715.2269090909092
        ]
Exemple #11
0
    def setUp(self):
        """Create data to use for testing."""
        self.data = SampleData().get_sample_close_data()

        self.po_period_6_period_12_expected = [np.nan, np.nan, np.nan, np.nan,
        np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
        0.33656686827876153, 0.24292184988407403, 0.035067724348717487,
        -0.05406071412565526, -0.35004673662314001, -0.62263045093967562,
        -1.0669624544312803, -1.2389906759649123, -1.5110204167512691,
        -1.6261182911679213, -1.3240834310321137, -0.76589021835084514,
        -0.35267550929460328, -0.1786730879846998, -0.0018957725200040563,
        0.26510459125345681, 0.34147055858733261, 0.13086755049222953,
        0.17093670317910095, 0.096918309886777826, -0.082983263863072199,
        -0.66509624116476718, -0.60673235011329774, -0.29303104853489825,
        0.34468226645239197, 0.84878577996669469, 0.94505044858567422,
        0.70542492259487855, 0.47385402792426357, 0.36922095863848386,
        0.5029974674912906, 0.57388300283128812, 0.78520126365945242,
        0.85957069885467585, 0.9790474086415778, 1.108138052258884,
        1.2435314993803779, 1.0501459291579553, 0.76314054832525979,
        0.59228196311429271, 0.30805585730236129, -0.19692723343035684,
        -0.55872288637275969, -0.71355738322346673, -0.60261294452837888,
        -0.5877478343800322, -0.43068973716519604, -0.47083025080268265,
        -0.37843468355578452, -0.34608642350021979, -0.31387826528613755,
        -0.28955368360481154, -0.21918958063625779, -0.15778754789140392,
        0.0119281120121145, 0.13600217040313717, 0.069695669302550042,
        0.27199655996576089, 0.40157811394400944, 0.23393975623873936,
        -0.011195542389162422, -0.25715022670941545, -0.30558063074011871,
        -0.33383569790711165, -0.54774796153781913, -0.64149651755826453,
        -0.42819106933602813, -0.44299913075533054, -0.18328402531894275,
        0.10221462733661768, 0.34374527583026765, 0.26194265370770065,
        0.039925799814725639, -0.081450760143936096, -0.17725646544906976,
        -0.17554524654034062, -0.25467336737352586, -0.28687578727365287,
        -0.1961867421268958, -0.091814743483917272, 0.012686763664971051,
        0.1300784025066562, 0.27887671204644071, 0.3963112610922962,
        0.34506764190501288, 0.36601162718033853, 0.38129264423406917,
        0.38776599342562496, 0.35192439278793131, 0.26736790348106654,
        0.18009281827190562, 0.12789724276004677, -0.10437979447801317,
        -0.21573348592107991, -0.25051871323722097, -0.23638183749156919,
        -0.40178637011632429, -0.97276394255107779, -1.300639292911201,
        -1.528493755981265, -1.6030422566027416, -1.5448610058181429,
        -1.4865959798702686, -1.1697992693745809, -0.9711182594340334,
        -0.75054632710632552, -0.89723094523544311, -0.91396986510553502,
        -0.97842449731343739, -0.97628329013987103, -1.025130875479342,
        -1.2116616444711552, -1.3860949022082569, -1.3721087986499065,
        -1.3470159460391511, -1.1448131863137903]

        self.po_period_8_period_16_expected = [np.nan, np.nan, np.nan, np.nan,
        np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
        np.nan, np.nan, -0.16270640679322512, -0.44106770729780836,
        -0.82796082645009794, -1.0685185409067595, -1.4224222683985654,
        -1.6321717937653313, -1.5231764351448629, -1.1979144303690854,
        -0.92902995475284533, -0.78617490523814038, -0.61427991026050333,
        -0.36513084442939675, -0.1024583986780202, -0.033042479908235993,
        0.1310937395623098, 0.10578677316521959, 0.0041477681894246977,
        -0.38602387385538145, -0.38091760508137573, -0.25747590667790832,
        0.19059153837308618, 0.61510844668204256, 0.71220612061116739,
        0.49480282962594713, 0.3665291313934137, 0.4523396643251244,
        0.68879631587668455, 0.87880561472639573, 1.0220822217387593,
        1.0003426815287122, 1.0770772882483202, 1.2624590801823654,
        1.4432470188324076, 1.2765078898490787, 1.0457666227722078,
        0.9239154112204776, 0.73622359625779543, 0.39027487473036282,
        0.063836458576423588, -0.25454320688106735, -0.4040491870085352,
        -0.49224381879802298, -0.44077359779702036, -0.61565371148915937,
        -0.64793516402922513, -0.62488686939134364, -0.54390465117295017,
        -0.4846184160166192, -0.38005113270187424, -0.32457859083406831,
        -0.1843997198326002, 0.00018817325936242791, -0.003598928308990358,
        0.16177189975416084, 0.27641096018391614, 0.19506492285238289,
        0.059434439549834135, -0.096249726986007603, -0.17989263926081422,
        -0.21513892471745072, -0.3611479306240194, -0.53564919084454665,
        -0.49630243322591983, -0.57848854843560193, -0.37317826462586379,
        -0.12705458436967046, 0.054770637650484823, 0.0038055879833369635,
        -0.08128488191406405, -0.11918830741470089, -0.13868851473646102,
        -0.061042674948460142, -0.11122370729836616, -0.20587566549859762,
        -0.23114316000152352, -0.14636540935458528, -0.077876617940081078,
        0.014213217155228226, 0.1375361140319393, 0.22146255966391326,
        0.2498470670628519, 0.35948926567271916, 0.44010036862915686,
        0.46971591624195891, 0.46789759454974567, 0.42124727578010124,
        0.33108515495949653, 0.2780082283384695, 0.096732429751769711,
        -0.034154960809407588, -0.111961910002323, -0.15502938048411902,
        -0.33158409656829735, -0.82780608482923013, -1.1981337982092184,
        -1.4947817761396813, -1.6331458905791014, -1.654227020970338,
        -1.7029322502313791, -1.6482107028516373, -1.5793448326156361,
        -1.3736108772262612, -1.443998166565567, -1.4068632199376685,
        -1.4444085051515656, -1.3668748091955638, -1.3185432421196459,
        -1.3924372865176142, -1.566208414152876, -1.6600669374616905,
        -1.6715681693204156, -1.543125031779194]

        self.po_period_10_period_20_expected = [np.nan, np.nan, np.nan, np.nan,
        np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
        np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, -1.1737757224811678,
        -1.4475535484135769, -1.4758235971129086, -1.2905181905501459,
        -1.1447781484541981, -1.0974597857588972, -1.0047704622825373,
        -0.81875795420444275, -0.60161286968174643, -0.54231009492677251,
        -0.30211454097089707, -0.17083629969672492, -0.15188960893809067,
        -0.45685201111475604, -0.42875503967734407, -0.25923738069027591,
        0.1827422237366845, 0.56228333931607277, 0.67909412752088638,
        0.52147952948548859, 0.3474521999723087, 0.30616847238929373,
        0.51978073116244305, 0.82753242251665748, 1.0989781436372839,
        1.215124012831805, 1.2456710294324289, 1.3048065028415592,
        1.4379433097083867, 1.4185578382715323, 1.36298086757794,
        1.3322777405084003, 1.1473994592109595, 0.74720495438023093,
        0.39236766644407128, 0.1237047114190349, 0.034408768779919024,
        -0.075535466230372453, -0.14768897282586149, -0.37326663400708709,
        -0.50869581619012416, -0.64404658755338717, -0.67623114748726876,
        -0.66460763145018642, -0.57226692472454221, -0.50884933983253511,
        -0.3745406089509688, -0.23732342214776422, -0.22837738758346862,
        -0.032241004855357157, 0.12054821350398304, 0.1192907889709499,
        0.044190519184570475, -0.079117596411069538, -0.15206915403906718,
        -0.1587330407534005, -0.30668645975865116, -0.43904136048769671,
        -0.36642347920896895, -0.50062457777259017, -0.41493461450533337,
        -0.24901682155657384, -0.1016237368423679, -0.11809702751977427,
        -0.19731908460514716, -0.2842819230491207, -0.26550986345182431,
        -0.18394963539511555, -0.19641266460218784, -0.16546556090404643,
        -0.15085997665528458, -0.13401495064252866, -0.12559420313660308,
        -0.054651380593862695, 0.061350321435350318, 0.1931927044550725,
        0.21076053770381414, 0.26205493136696911, 0.33451941300817339,
        0.38584312820484329, 0.43824973433001246, 0.45895872865446197,
        0.44101233333715606, 0.41461299215320402, 0.2458258554277597,
        0.12118830507632321, 0.055215377540203621, 0.0029460720115578876,
        -0.16767905204208994, -0.62434119732203275, -1.0067418898057001,
        -1.3270244253895094, -1.541019762578848, -1.6561874717762777,
        -1.7395799937459206, -1.7368627507960244, -1.7640309542965522,
        -1.750997976810698, -1.9059875212438928, -1.8860271429149023,
        -1.8947739458528328, -1.798212687290317, -1.7541060412534195,
        -1.8065457953192043, -1.9438636408965346, -1.982567486484605,
        -2.0037874740416379, -1.8918230166356396]
    def setUp(self):
        """Create data to use for testing."""
        self.data = SampleData().get_sample_close_data()

        self.dop_period_6_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, 1.6849999999999454,
            2.2975000000001273, 3.9800000000000182, 0.10500000000001819,
            -2.5950000000000273, 2.3524999999999636, 3.9199999999999591,
            0.65999999999996817, -6.2950000000000728, -3.1949999999999363,
            -11.795000000000073, -9.5274999999999181, -16.887500000000045,
            -7.0399999999999636, -13.122499999999945, -6.4674999999999727,
            5.1574999999999136, 15.912500000000023, 6.92999999999995,
            -2.6275000000000546, -4.6075000000000728, 2.5025000000000546,
            2.5499999999999545, -5.2225000000000819, 3.1775000000000091,
            -1.7474999999999454, -4.1575000000000273, -20.409999999999854,
            1.7225000000000819, 10.184999999999945, 27.877499999999941,
            19.577499999999986, 2.0574999999998909, -19.075000000000045,
            -12.134999999999991, -0.015000000000100044, 16.182500000000005,
            13.402499999999918, 13.719999999999914, 4.2775000000000318,
            4.8725000000000591, 6.6600000000000819, 9.8050000000000637,
            -3.5525000000001228, -5.8650000000000091, -0.03999999999996362,
            -2.0775000000001, -12.422500000000014, -10.404999999999973,
            -5.1724999999999, 4.9474999999999909, 2.0650000000000546,
            4.2724999999999227, -8.3450000000000273, -3.8024999999998954,
            -3.5674999999999955, 0.83749999999997726, -1.4900000000000091,
            1.9449999999999363, 0.17250000000001364, 5.7749999999999773,
            3.8575000000000728, -3.8700000000000045, 5.3600000000000136,
            4.8775000000000546, -4.6175000000000637, -9.1500000000000909,
            -8.6475000000000364, -1.5724999999999909, 2.6374999999999318,
            -5.8025000000000091, -5.875, 4.0125000000000455,
            -3.1399999999999864, 8.125, 8.4574999999999818, 6.1874999999998863,
            -7.0599999999999454, -9.6700000000000728, -6.6849999999999454,
            -0.59000000000003183, 3.5724999999999909, 0.51749999999992724,
            -1.7650000000001, 0.11500000000000909, 2.9125000000000227,
            2.3399999999999181, 2.9524999999998727, 3.7649999999999864,
            4.2274999999999636, -1.0625, 2.1299999999999955,
            2.1449999999999818, 2.6000000000001364, 1.0650000000000546,
            -0.32499999999993179, -2.1200000000000045, -0.10249999999996362,
            -6.9724999999999682, -3.1625000000000227, -0.68499999999994543,
            1.63250000000005, -6.4900000000000091, -23.720000000000027,
            -18.052500000000009, -11.550000000000068, -3.2250000000000227,
            0.17499999999995453, -2.80499999999995, 0.0075000000000500222,
            -2.6349999999999909, -1.3250000000000455, -14.200000000000045,
            -8.7100000000000364, -9.0475000000000136, -0.84500000000002728,
            -4.0474999999999, -8.9625000000000909, -13.927500000000009,
            -6.3324999999999818, -4.8350000000000364, 2.4075000000000273
        ]

        self.dop_period_8_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            4.2380000000001701, 1.0240000000000009, -2.0439999999999827,
            2.571999999999889, 3.6739999999999782, 1.0960000000000036,
            -5.4240000000000919, -3.7960000000000491, -13.980000000000018,
            -12.395999999999958, -19.853999999999928, -11.877999999999929,
            -16.639999999999986, -10.601999999999975, 4.0659999999999172,
            14.973999999999933, 9.8099999999999454, 1.0720000000000027,
            -3.0620000000001255, 1.1139999999999191, 1.8419999999999845,
            -5.0240000000000009, 3.9739999999999327, -2.40199999999993,
            -5.2540000000000191, -20.877999999999929, -1.5039999999999054,
            8.2100000000000364, 28.388000000000034, 27.413999999999987,
            7.7019999999998845, -15.09800000000007, -14.388000000000034,
            -4.7240000000000464, 13.635999999999967, 16.481999999999971,
            18.449999999999932, 9.20799999999997, 7.2220000000000937,
            9.0579999999999927, 11.080000000000155, -1.4999999999998863,
            -4.7859999999999445, -0.32399999999995543, -4.5120000000000573,
            -13.382000000000062, -11.730000000000018, -8.7399999999998954,
            2.01400000000001, 2.1979999999999791, 5.3319999999999936,
            -7.3500000000000227, -4.7799999999999727, -4.5219999999999345,
            -1.6059999999999945, -1.2580000000000382, 1.7519999999999527,
            0.41999999999995907, 6.0739999999999554, 5.1560000000000628,
            -3.3780000000000427, 6.7520000000000664, 5.0799999999999272,
            -4.8339999999999463, -7.8940000000000055, -10.831999999999994,
            -4.8539999999999281, 1.3500000000000227, -6.5060000000000855,
            -6.0340000000001055, 3.3799999999999955, -5.0620000000000118,
            8.9759999999999991, 10.619999999999891, 6.7899999999999636,
            -3.9700000000000273, -10.024000000000001, -8.9759999999999991,
            -3.6920000000000073, 2.6480000000000246, 0.77800000000002001,
            -1.1220000000001846, 0.42799999999999727, 2.4840000000000373,
            2.6180000000000518, 4.0319999999998117, 4.8419999999998709,
            5.1479999999999109, -0.0019999999999527063, 2.9660000000000082,
            2.5760000000000218, 2.6360000000000809, 2.3120000000001255,
            0.044000000000096406, -2.0599999999999454, -0.33600000000001273,
            -7.8259999999999081, -4.2420000000000755, -1.5699999999999363,
            0.10800000000006094, -6.3740000000000236, -25.591999999999985,
            -22.072000000000003, -17.898000000000025, -9.3440000000000509,
            -1.1720000000000255, -3.7559999999999718, -0.10799999999983356,
            -2.92999999999995, -2.2759999999999536, -15.116000000000099,
            -11.224000000000046, -12.024000000000001, -4.8139999999999645,
            -4.9239999999999782, -10.773999999999887, -15.586000000000126,
            -9.7740000000000009, -8.3300000000000409, 0.41999999999995907
        ]

        self.dop_period_10_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, -1.3633333333333439, 3.1383333333333212,
            4.0099999999998772, 0.93666666666672427, -5.2866666666666333,
            -3.228333333333353, -15.063333333333503, -14.733333333333348,
            -23.071666666666715, -14.844999999999914, -21.364999999999895,
            -13.974999999999909, 0.78999999999996362, 14.688333333333389,
            9.4366666666664969, 3.5166666666666515, -0.10666666666668334,
            2.4483333333332666, 0.76166666666654237, -5.8233333333333803,
            4.30499999999995, -1.838333333333253, -6.0183333333333167,
            -22.661666666666633, -1.9566666666665924, 5.8633333333333439,
            27.925000000000068, 28.981666666666683, 14.553333333333171,
            -11.023333333333426, -11.673333333333289, -6.7983333333334031,
            10.279999999999859, 15.046666666666624, 21.784999999999968,
            13.533333333333303, 11.631666666666661, 11.393333333333317,
            13.540000000000077, -0.49999999999988631, -3.2749999999998636,
            0.56166666666672427, -4.9366666666666106, -15.968333333333362,
            -13.01833333333343, -10.208333333333371, -0.875,
            -0.15499999999985903, 5.6649999999999636, -6.7733333333331984,
            -4.1499999999999773, -5.5250000000000909, -2.4683333333332484,
            -3.3466666666665787, 2.0183333333333167, 0.27666666666664241,
            6.533333333333303, 5.6200000000000045, -2.4366666666666106,
            7.4433333333332712, 6.4516666666667106, -4.8666666666666742,
            -8.4033333333333076, -10.236666666666679, -6.8766666666666652,
            -1.3283333333333758, -7.8500000000000227, -6.8716666666666697,
            3.3883333333333212, -5.8000000000000682, 7.7483333333333348,
            11.771666666666647, 8.8749999999998863, -3.6333333333334394,
            -7.8666666666667879, -9.6449999999999818, -5.7550000000001091,
            0.17333333333340306, 0.040000000000077307, -0.95166666666671063,
            0.98166666666656965, 2.8483333333333576, 2.3700000000000045,
            4.4316666666667288, 5.9433333333332712, 6.2599999999999909,
            0.76499999999998636, 3.9733333333333576, 3.3799999999998818,
            3.1050000000001319, 2.4383333333333894, 1.0850000000001501,
            -1.838333333333253, -0.30000000000006821, -8.3466666666666924,
            -5.1299999999998818, -2.5350000000000819, -0.62499999999988631,
            -7.9099999999999682, -26.561666666666611, -24.55166666666662,
            -21.993333333333339, -15.023333333333426, -6.32000000000005,
            -5.0350000000000819, -0.90499999999997272, -3.1483333333333121,
            -2.6166666666665606, -16.538333333333412, -12.455000000000155,
            -14.620000000000005, -7.4950000000000045, -8.4366666666666106,
            -11.953333333333262, -17.745000000000005, -11.563333333333389,
            -11.545000000000073, -2.4750000000000227
        ]
Exemple #13
0
    def setUp(self):
        """Create data to use for testing."""
        self.close_data = SampleData().get_sample_close_data()
        self.volume = SampleData().get_sample_volume()

        self.pvi_expected = [
            1.0, 1.0131617136727868, 1.0152943403369297, 1.0220581740172878,
            1.0220581740172878, 1.0244368189382491, 1.0244368189382491,
            1.028220752029624, 1.028220752029624, 1.0248545154752871,
            1.0248545154752871, 1.0276690488102527, 1.0244650041655374,
            1.0151167327315447, 1.0151167327315447, 0.9972084407513031,
            0.99256833708695491, 0.99256833708695491, 0.99517706110413839,
            0.97758096185097998, 0.97758096185097998, 0.97758096185097998,
            0.99466607532561435, 0.99006720628561307, 0.99006720628561307,
            0.9885444164271886, 0.99615836571931071, 0.99615836571931071,
            0.98495031479002748, 0.99788463403910965, 0.99788463403910965,
            0.99171806061919043, 0.99171806061919043, 1.0161153624211521,
            1.027359450785359, 1.027359450785359, 1.0355085426193171,
            1.0228194246619016, 0.99612764186303671, 0.99612764186303671,
            1.0040616159726605, 1.0257877152198811, 1.0257877152198811,
            1.0257877152198811, 1.0230216079786347, 1.0289668610989608,
            1.0289668610989608, 1.0289668610989608, 1.0289668610989608,
            1.0259326287949169, 1.0259326287949169, 1.0189863197822924,
            1.0189863197822924, 1.0189863197822924, 1.0183277653623486,
            1.0280667720726715, 1.0280667720726715, 1.0339082770092849,
            1.0168155256078024, 1.0168155256078024, 1.0168155256078024,
            1.0187952720226248, 1.0187952720226248, 1.0187952720226248,
            1.016996041509638, 1.0263976544718645, 1.0263976544718645,
            1.0263976544718645, 1.0421392044955968, 1.0421392044955968,
            1.0281920752436917, 1.0214867246418142, 1.0214867246418142,
            1.0248001127276287, 1.0248001127276287, 1.0110249205679784,
            1.0110249205679784, 1.0110249205679784, 0.99793812043944774,
            1.0161128254535388, 1.0161128254535388, 1.0161128254535388,
            1.0020913185554337, 1.0020913185554337, 1.0001286681336989,
            1.0027497561162737, 1.0076880378225743, 1.0043958500183741,
            1.0043958500183741, 1.0073152364142319, 1.011110438728847,
            1.0115673861647203, 1.0115673861647203, 1.0154889254595501,
            1.0154889254595501, 1.0154889254595501, 1.0215347849615932,
            1.0215347849615932, 1.0229904134885814, 1.0233574850301697,
            1.0220790634542931, 1.0220790634542931, 1.0242368747726398,
            1.0242368747726398, 1.0242368747726398, 1.0257753069682629,
            1.0257753069682629, 1.0134804497418848, 1.0134804497418848,
            1.0083590544889585, 1.0026421481601104, 1.0026421481601104,
            1.0049716578506291, 0.99852579865015956, 0.99852579865015956,
            0.99368537269643453, 0.99368537269643453, 0.99368537269643453,
            0.99368537269643453, 0.98515032029708494, 0.98924228371006429,
            0.98207121911504114, 0.96934966949449142, 0.96934966949449142,
            0.97169334499548909, 0.97169334499548909, 0.97908212385343263
        ]

        self.nvi_expected = [
            1.0, 1.0, 1.0, 1.0, 0.99737014309878635, 0.99737014309878635,
            1.0004742987659747, 1.0004742987659747, 0.99716065719744162,
            0.99716065719744162, 1.0043145436667653, 1.0043145436667653,
            1.0043145436667653, 1.0043145436667653, 1.0062413756294879,
            1.0062413756294879, 1.0062413756294879, 0.98680231838995269,
            0.98680231838995269, 0.98680231838995269, 0.98663450803834407,
            1.001543812354337, 1.001543812354337, 1.001543812354337,
            0.9944189699523458, 0.9944189699523458, 0.9944189699523458,
            0.99416561480076548, 0.99416561480076548, 0.99416561480076548,
            0.98635048365765376, 0.98635048365765376, 0.95843298325586723,
            0.95843298325586723, 0.95843298325586723, 0.98950906327275012,
            0.98950906327275012, 0.98950906327275012, 0.98950906327275012,
            0.99088989143683581, 0.99088989143683581, 0.99088989143683581,
            0.99632731175782552, 1.0082109045860519, 1.0082109045860519,
            1.0082109045860519, 1.0161210862361918, 1.024938792602782,
            1.0106146186998928, 1.0106146186998928, 1.0173304832838312,
            1.0173304832838312, 0.99918797201758558, 0.99641396346902655,
            0.99641396346902655, 0.99641396346902655, 0.99371355483156543,
            0.99371355483156543, 0.99371355483156543, 0.99665482086415003,
            0.99435889590200588, 0.99435889590200588, 0.99137380024919031,
            0.99593195460701656, 0.99593195460701656, 0.99593195460701656,
            0.99675568915703361, 0.98682169637474004, 0.98682169637474004,
            0.9880204711359688, 0.9880204711359688, 0.9880204711359688,
            0.98259721740583439, 0.98259721740583439, 0.98661148727656012,
            0.98661148727656012, 0.98443970883380372, 0.99704600899003337,
            0.99704600899003337, 0.99704600899003337, 1.0034417876586332,
            1.0034790446217512, 1.0034790446217512, 0.99659080642219422,
            0.99659080642219422, 0.99659080642219422, 0.99659080642219422,
            0.99659080642219422, 0.99417854456756283, 0.99417854456756283,
            0.99417854456756283, 0.99417854456756283, 0.9975467383944433,
            0.9975467383944433, 1.000864645328748, 0.99560818602833268,
            0.99560818602833268, 0.99695467086972778, 0.99695467086972778,
            0.99695467086972778, 0.99695467086972778, 0.994176709793965,
            0.994176709793965, 0.98225048254896785, 0.98430800315838363,
            0.98430800315838363, 0.98531676754696274, 0.98531676754696274,
            0.9535660945461697, 0.9535660945461697, 0.9535660945461697,
            0.95340247863870453, 0.95340247863870453, 0.95340247863870453,
            0.95677675074268698, 0.95677675074268698, 0.956510065780109,
            0.93419742391107474, 0.93441331173792364, 0.93441331173792364,
            0.93441331173792364, 0.93441331173792364, 0.93441331173792364,
            0.92071826863351425, 0.92071826863351425, 0.91541969388983713,
            0.91541969388983713
        ]
Exemple #14
0
    def setUp(self):
        """Create data to use for testing."""
        self.data = SampleData().get_sample_close_data()

        self.center_band_period_6_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, 804.55166666666673,
            807.84333333333336, 809.89666666666665, 811.21833333333325,
            811.20333333333338, 812.51166666666666, 813.88000000000011,
            814.40333333333331, 813.18666666666661, 812.6783333333334,
            810.23333333333346, 806.20333333333338, 799.25166666666667,
            793.06499999999994, 785.82499999999993, 778.30499999999995,
            775.09000000000003, 774.75166666666667, 776.35333333333347,
            776.68333333333339, 779.10666666666668, 782.55166666666673,
            784.03833333333341, 781.79333333333341, 781.85500000000002,
            781.81833333333327, 781.17833333333328, 775.88166666666666,
            773.70666666666659, 774.42666666666662, 777.66499999999996,
            782.99833333333333, 787.4766666666668, 792.12333333333345,
            793.86333333333334, 795.21833333333336, 795.20000000000016,
            794.85333333333335, 797.77499999999998, 803.81666666666672,
            810.46833333333336, 817.15666666666664, 822.19999999999993,
            824.55999999999983, 824.90499999999986, 826.52833333333331,
            826.42666666666662, 822.80833333333339, 817.61833333333345,
            814.28833333333341, 812.64499999999998, 809.72499999999991,
            808.505, 807.48333333333323, 807.23000000000002,
            806.75500000000011, 805.25833333333321, 803.72666666666657,
            802.04166666666663, 802.36333333333334, 803.52666666666664,
            805.11000000000001, 805.08666666666659, 807.51666666666677,
            809.49833333333333, 809.89666666666665, 808.18333333333328,
            805.62666666666667, 804.84666666666669, 802.55833333333339,
            798.31000000000006, 795.5916666666667, 795.43166666666673,
            794.28000000000009, 795.0916666666667, 796.21833333333336,
            799.1450000000001, 800.50333333333344, 799.26666666666677, 799.495,
            797.67500000000007, 795.64666666666665, 793.17999999999995,
            792.25166666666667, 792.61833333333345, 793.74166666666667,
            794.58000000000004, 795.21833333333325, 796.80666666666673,
            799.15999999999997, 800.42500000000007, 801.98666666666668,
            803.67000000000007, 805.09499999999991, 806.05166666666662,
            806.39499999999987, 807.06833333333327, 807.23000000000002,
            805.59666666666669, 804.04999999999984, 802.65500000000009,
            801.56499999999994, 799.25, 792.40166666666664, 786.52166666666665,
            779.64333333333332, 772.54333333333341, 765.60000000000002,
            759.44500000000005, 757.98500000000001, 756.55833333333328,
            755.81666666666661, 752.16833333333341, 748.25500000000011,
            744.10000000000002, 740.005, 735.63666666666666,
            729.73333333333323, 725.005, 720.53333333333342,
            716.43500000000006, 712.72500000000002
        ]

        self.upper_band_period_6_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, 885.00683333333347,
            888.62766666666676, 890.88633333333337, 892.34016666666662,
            892.32366666666678, 893.76283333333345, 895.26800000000014,
            895.84366666666676, 894.5053333333334, 893.94616666666684,
            891.25666666666689, 886.82366666666678, 879.17683333333343,
            872.37149999999997, 864.40750000000003, 856.13549999999998,
            852.59900000000016, 852.22683333333339, 853.98866666666686,
            854.3516666666668, 857.01733333333345, 860.80683333333343,
            862.44216666666682, 859.97266666666678, 860.04050000000007,
            860.0001666666667, 859.29616666666664, 853.46983333333344,
            851.07733333333329, 851.86933333333332, 855.43150000000003,
            861.2981666666667, 866.22433333333356, 871.33566666666684,
            873.24966666666671, 874.74016666666682, 874.72000000000025,
            874.33866666666677, 877.55250000000001, 884.19833333333349,
            891.5151666666668, 898.87233333333336, 904.41999999999996,
            907.01599999999985, 907.39549999999997, 909.18116666666674,
            909.06933333333336, 905.08916666666676, 899.38016666666692,
            895.7171666666668, 893.90950000000009, 890.69749999999999,
            889.35550000000012, 888.23166666666668, 887.95300000000009,
            887.43050000000017, 885.78416666666658, 884.09933333333333,
            882.24583333333339, 882.59966666666674, 883.87933333333342,
            885.62100000000009, 885.59533333333331, 888.26833333333354,
            890.44816666666679, 890.88633333333337, 889.00166666666667,
            886.18933333333337, 885.33133333333342, 882.81416666666678,
            878.14100000000019, 875.15083333333348, 874.97483333333344,
            873.7080000000002, 874.60083333333341, 875.84016666666673,
            879.05950000000018, 880.55366666666691, 879.1933333333335,
            879.44450000000006, 877.44250000000011, 875.21133333333341,
            872.49800000000005, 871.47683333333339, 871.88016666666692,
            873.1158333333334, 874.03800000000012, 874.7401666666666,
            876.48733333333348, 879.07600000000002, 880.4675000000002,
            882.18533333333346, 884.03700000000015, 885.60450000000003,
            886.65683333333334, 887.03449999999998, 887.77516666666668,
            887.95300000000009, 886.15633333333346, 884.45499999999993,
            882.92050000000017, 881.72149999999999, 879.17500000000007,
            871.64183333333335, 865.17383333333339, 857.60766666666677,
            849.79766666666683, 842.16000000000008, 835.38950000000011,
            833.78350000000012, 832.21416666666664, 831.39833333333331,
            827.38516666666681, 823.08050000000014, 818.5100000000001,
            814.0055000000001, 809.20033333333333, 802.70666666666659,
            797.5055000000001, 792.58666666666682, 788.07850000000008,
            783.99750000000006
        ]

        self.lower_band_period_6_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, 724.09650000000011,
            727.05900000000008, 728.90700000000004, 730.09649999999999,
            730.08300000000008, 731.26049999999998, 732.49200000000008,
            732.96299999999997, 731.86799999999994, 731.41050000000007,
            729.21000000000015, 725.58300000000008, 719.32650000000001,
            713.75849999999991, 707.24249999999995, 700.47449999999992,
            697.58100000000002, 697.27650000000006, 698.71800000000019,
            699.0150000000001, 701.19600000000003, 704.29650000000004,
            705.63450000000012, 703.61400000000003, 703.66950000000008,
            703.63649999999996, 703.06049999999993, 698.29349999999999,
            696.3359999999999, 696.98399999999992, 699.89850000000001,
            704.69849999999997, 708.72900000000016, 712.91100000000017,
            714.47699999999998, 715.69650000000001, 715.68000000000018,
            715.36800000000005, 717.99749999999995, 723.43500000000006,
            729.42150000000004, 735.44100000000003, 739.9799999999999,
            742.10399999999981, 742.41449999999986, 743.87549999999999,
            743.78399999999999, 740.52750000000003, 735.8565000000001,
            732.85950000000014, 731.38049999999998, 728.75249999999994,
            727.65449999999998, 726.7349999999999, 726.50700000000006,
            726.07950000000017, 724.73249999999996, 723.35399999999993,
            721.83749999999998, 722.12700000000007, 723.17399999999998,
            724.59900000000005, 724.57799999999997, 726.7650000000001,
            728.54849999999999, 728.90700000000004, 727.36500000000001,
            725.06399999999996, 724.36200000000008, 722.30250000000012,
            718.47900000000004, 716.03250000000003, 715.88850000000002,
            714.85200000000009, 715.5825000000001, 716.59649999999999,
            719.23050000000012, 720.45300000000009, 719.34000000000015,
            719.54550000000006, 717.90750000000003, 716.08199999999999,
            713.86199999999997, 713.02650000000006, 713.3565000000001,
            714.36750000000006, 715.12200000000007, 715.6964999999999,
            717.12600000000009, 719.24400000000003, 720.38250000000005,
            721.78800000000001, 723.30300000000011, 724.58549999999991,
            725.44650000000001, 725.75549999999987, 726.36149999999998,
            726.50700000000006, 725.03700000000003, 723.64499999999987,
            722.38950000000011, 721.4085, 719.32500000000005,
            713.16150000000005, 707.86950000000002, 701.67899999999997,
            695.2890000000001, 689.04000000000008, 683.5005000000001,
            682.18650000000002, 680.90249999999992, 680.23500000000001,
            676.95150000000012, 673.42950000000008, 669.69000000000005,
            666.00450000000001, 662.07299999999998, 656.75999999999988,
            652.50450000000001, 648.48000000000013, 644.79150000000004,
            641.45249999999999
        ]
Exemple #15
0
    def setUp(self):
        """Create data to use for testing."""
        self.close_data = SampleData().get_sample_close_data()
        self.high_data = SampleData().get_sample_high_data()
        self.low_data = SampleData().get_sample_low_data()
        self.volume = SampleData().get_sample_volume()

        self.tenkansen_default_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            803.82500000000005, 809.03999999999996, 810.11000000000001,
            812.84500000000003, 812.84500000000003, 812.89499999999998,
            812.89499999999998, 806.52999999999997, 804.68000000000006,
            797.03499999999997, 797.03499999999997, 791.17499999999995,
            789.83500000000004, 786.8900000000001, 786.8900000000001, 779.75,
            777.90000000000009, 776.88499999999999, 776.88499999999999,
            776.88499999999999, 776.88499999999999, 782.66000000000008,
            782.70500000000004, 780.65999999999997, 769.69000000000005,
            769.69000000000005, 769.69000000000005, 779.40499999999997,
            782.60000000000002, 782.60000000000002, 782.60000000000002,
            782.60000000000002, 782.60000000000002, 791.86500000000001,
            796.13499999999999, 800.32999999999993, 800.32999999999993,
            801.60000000000002, 804.82500000000005, 808.96500000000003,
            812.07999999999993, 820.61000000000001, 822.81999999999994,
            826.54500000000007, 821.28999999999996, 820.17000000000007,
            819.91000000000008, 819.91000000000008, 815.58500000000004,
            815.58500000000004, 813.90000000000009, 811.10000000000002,
            807.44000000000005, 807.44000000000005, 807.27499999999998,
            807.27499999999998, 807.27499999999998, 807.27499999999998,
            805.55500000000006, 805.55500000000006, 807.67000000000007,
            808.16499999999996, 808.16499999999996, 807.86500000000001,
            805.67000000000007, 805.67000000000007, 805.67000000000007,
            803.20500000000004, 802.33500000000004, 802.33500000000004,
            796.755, 795.66000000000008, 798.23500000000001, 798.25, 798.25,
            798.25, 798.25, 798.25, 798.25, 798.93499999999995,
            798.93499999999995, 798.93499999999995, 793.36000000000001,
            793.40000000000009, 794.75, 797.02499999999998, 798.3599999999999,
            798.3599999999999, 798.63, 800.32500000000005, 802.39499999999998,
            802.72000000000003, 804.06999999999994, 804.84000000000003,
            804.84000000000003, 802.87, 802.87, 802.87, 802.87,
            799.91499999999996, 786.66000000000008, 784.45000000000005,
            782.28999999999996, 779.23000000000002, 779.23000000000002,
            777.67499999999995, 777.67499999999995, 772.375,
            759.51999999999998, 748.79999999999995, 747.45499999999993, 744.38,
            744.38, 742.1400000000001, 737.43000000000006, 730.33500000000004,
            730.23000000000002, 720.34500000000003, 720.34500000000003
        ]

        self.kijunsen_default_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, 791.11000000000001, 791.11000000000001, 791.11000000000001,
            791.11000000000001, 791.11000000000001, 791.11000000000001,
            791.11000000000001, 785.55500000000006, 785.55500000000006,
            785.55500000000006, 785.55500000000006, 785.55500000000006,
            784.27999999999997, 782.60000000000002, 782.60000000000002,
            782.60000000000002, 782.60000000000002, 782.60000000000002,
            786.38999999999999, 786.38999999999999, 787.66000000000008,
            790.88499999999999, 794.48000000000002, 794.48000000000002,
            794.48000000000002, 794.48000000000002, 794.48000000000002,
            794.48000000000002, 794.48000000000002, 794.48000000000002,
            794.48000000000002, 794.48000000000002, 794.48000000000002,
            803.745, 808.01499999999999, 808.42000000000007,
            808.42000000000007, 808.42000000000007, 808.42000000000007,
            808.96500000000003, 812.07999999999993, 818.05999999999995,
            818.05999999999995, 818.05999999999995, 818.05999999999995,
            818.05999999999995, 817.75999999999999, 815.56500000000005,
            811.24000000000001, 811.24000000000001, 808.77500000000009,
            805.10500000000002, 802.33500000000004, 802.21500000000003,
            802.21500000000003, 802.21500000000003, 802.21500000000003,
            802.21500000000003, 802.21500000000003, 802.21500000000003,
            802.21500000000003, 802.21500000000003, 802.21500000000003,
            802.21500000000003, 802.21500000000003, 802.21500000000003,
            802.21500000000003, 802.21500000000003, 802.21500000000003,
            802.21500000000003, 798.25, 798.25, 798.25, 798.34000000000003,
            798.48500000000001, 798.48500000000001, 798.48500000000001,
            798.48500000000001, 798.48500000000001, 799.17000000000007,
            799.17000000000007, 799.17000000000007, 799.17000000000007,
            787.16499999999996, 785.23000000000002, 783.06999999999994,
            783.005, 783.005, 781.45000000000005, 781.45000000000005,
            780.95000000000005, 780.84500000000003, 772.05999999999995,
            772.05999999999995, 768.98500000000001, 768.98500000000001,
            767.84500000000003, 763.13499999999999, 757.875, 757.875,
            756.18499999999995, 755.90999999999997
        ]

        self.chiku_span_expected = [
            779, 785, 784.8, 775.97, 786.16, 779.98, 775.16, 753.22, 771.75,
            780.29, 805.59, 811.98, 802.03, 781.1, 782.19, 788.42, 805.48,
            809.9, 819.56, 817.35, 822.1, 828.55, 835.74, 824.06, 821.63,
            827.09, 821.49, 806.84, 804.6, 804.08, 811.77, 809.57, 814.17,
            800.71, 803.08, 801.23, 802.79, 800.38, 804.06, 802.64, 810.06,
            810.73, 802.65, 814.96, 815.95, 805.03, 799.78, 795.39, 797.97,
            801.23, 790.46, 788.72, 798.82, 788.48, 802.84, 807.99, 808.02,
            796.87, 791.4, 789.85, 791.92, 795.82, 793.22, 791.3, 793.6,
            796.59, 796.95, 799.65, 802.75, 805.42, 801.19, 805.96, 807.05,
            808.2, 808.49, 807.48, 805.23, 806.93, 797.25, 798.92, 800.12,
            800.94, 791.34, 765.84, 761.97, 757.65, 757.52, 759.28, 754.41,
            757.08, 753.41, 753.2, 735.63, 735.8, 729.48, 732.51, 727.2,
            717.78, 707.26, 708.97, 704.89, 710.25
        ]

        self.senkou_a_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, 783.9975, 783.9975, 783.9975, 783.9975,
            786.885, 786.9075, 785.885, 777.6225000000001, 777.6225000000001,
            777.6225000000001, 782.48, 784.0775000000001, 783.44, 782.6, 782.6,
            782.6, 787.2325000000001, 789.3675000000001, 793.3599999999999,
            793.3599999999999, 794.6300000000001, 797.855, 801.7225000000001,
            803.28, 807.5450000000001, 808.65, 810.5125, 807.885, 807.325,
            807.195, 807.195, 805.0325, 805.0325, 808.8225, 809.5575,
            807.9300000000001, 807.9300000000001, 807.8475000000001,
            807.8475000000001, 808.12, 809.6775, 811.8075, 811.8075, 812.865,
            813.1125, 813.1125, 812.8125, 810.6175000000001, 808.455, 808.455,
            805.99, 803.72, 802.335, 799.485, 798.9375, 800.225,
            800.2325000000001, 800.2325000000001, 800.2325000000001,
            800.2325000000001, 800.2325000000001, 800.2325000000001, 800.575,
            800.575, 800.575, 797.7875, 797.8075000000001, 798.4825000000001,
            799.62, 800.2874999999999, 798.305, 798.44, 799.2875,
            800.3675000000001, 800.6025, 801.2774999999999, 801.6625, 801.6625,
            800.6775, 801.02, 801.02, 801.02, 799.5425, 786.9125, 784.84,
            782.68, 781.1175000000001, 781.1175000000001, 779.5625, 779.5625,
            776.6625, 770.1825, 760.43, 759.7574999999999, 756.6825, 756.6825,
            754.9925000000001, 750.2825, 744.105, 744.0525, 738.265, 738.1275
        ]

        self.senkou_b_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, 794.48, 794.48, 794.48,
            794.48, 794.48, 794.48, 794.48, 794.48, 794.48, 794.48, 794.48,
            794.48, 794.48, 794.48, 794.48, 794.48, 794.48, 794.48, 794.48,
            794.48, 794.48, 794.48, 794.48, 794.48, 794.48, 794.48, 794.48,
            794.48, 794.48, 794.48, 794.48, 794.48, 794.48, 803.745, 808.015,
            808.4200000000001, 808.4200000000001, 808.4200000000001,
            808.4200000000001, 808.965, 812.0799999999999, 812.11, 812.11,
            812.11, 812.11, 812.11, 812.11, 812.11, 807.7850000000001,
            807.7850000000001, 807.7850000000001, 804.985, 802.215, 802.215,
            802.215, 802.215, 802.215, 790.895, 788.96, 786.8, 786.735,
            786.735, 785.1800000000001, 785.1800000000001, 784.6800000000001,
            784.575, 775.79, 775.79, 772.715, 772.715, 767.845, 763.135,
            757.875, 757.875, 756.69, 756.69
        ]
Exemple #16
0
    def setUp(self):
        """Create data to use for testing."""
        self.close_data = SampleData().get_sample_close_data()

        self.tr_period_6_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, 17.479999999999905,
            9.32000000000005, 10.629999999999995, 7.4000000000000909,
            7.4000000000000909, 5.9700000000000273, 8.0499999999999545,
            8.0499999999999545, 9.9900000000000091, 9.9900000000000091,
            22.720000000000027, 26.419999999999959, 39.160000000000082,
            33.270000000000095, 44.990000000000009, 30.839999999999918,
            27.139999999999986, 25.110000000000014, 25.110000000000014,
            25.110000000000014, 25.110000000000014, 13.560000000000059,
            10.440000000000055, 9.8199999999999363, 10.189999999999941,
            10.189999999999941, 11.0, 32.939999999999941, 32.939999999999941,
            32.939999999999941, 52.370000000000005, 58.759999999999991,
            58.759999999999991, 40.230000000000018, 31.690000000000055,
            30.879999999999995, 30.879999999999995, 28.799999999999955,
            38.459999999999923, 37.369999999999891, 33.680000000000064,
            23.069999999999936, 25.840000000000032, 18.389999999999986,
            18.389999999999986, 14.110000000000014, 14.25, 28.899999999999977,
            22.490000000000009, 23.009999999999991, 23.009999999999991,
            17.409999999999968, 10.089999999999918, 13.459999999999923,
            13.459999999999923, 13.459999999999923, 13.459999999999923,
            13.789999999999964, 3.67999999999995, 3.67999999999995,
            9.67999999999995, 10.350000000000023, 10.350000000000023,
            12.32000000000005, 13.310000000000059, 13.300000000000068,
            16.170000000000073, 20.560000000000059, 20.560000000000059,
            20.560000000000059, 14.569999999999936, 12.509999999999991,
            12.509999999999991, 12.75, 14.360000000000014, 19.509999999999991,
            19.539999999999964, 19.539999999999964, 19.539999999999964,
            18.169999999999959, 18.169999999999959, 18.169999999999959,
            7.0199999999999818, 5.9700000000000273, 5.9700000000000273,
            5.2900000000000773, 5.6500000000000909, 8.3500000000000227,
            11.450000000000045, 11.819999999999936, 8.8299999999999272,
            9.0099999999999909, 7.3999999999999773, 7.0099999999999909,
            7.2999999999999545, 7.2999999999999545, 3.2599999999999909,
            3.2599999999999909, 11.240000000000009, 11.240000000000009,
            10.230000000000018, 9.67999999999995, 15.589999999999918,
            35.100000000000023, 38.970000000000027, 43.290000000000077,
            43.420000000000073, 33.82000000000005, 11.430000000000064,
            7.5600000000000591, 5.8700000000000045, 6.0799999999999272,
            23.649999999999977, 21.450000000000045, 27.600000000000023,
            23.92999999999995, 26.0, 18.019999999999982, 28.539999999999964,
            25.25, 27.620000000000005, 22.310000000000059
        ]

        self.tr_period_8_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, 22.75,
            12.32000000000005, 10.629999999999995, 7.8500000000000227,
            10.090000000000032, 8.2100000000000364, 9.9900000000000091,
            9.9900000000000091, 22.720000000000027, 26.419999999999959,
            41.710000000000036, 41.710000000000036, 50.879999999999995,
            45.120000000000005, 45.120000000000005, 30.839999999999918,
            27.139999999999986, 25.110000000000014, 25.110000000000014,
            25.110000000000014, 25.110000000000014, 13.560000000000059,
            13.470000000000027, 10.189999999999941, 11.0, 32.939999999999941,
            32.939999999999941, 32.939999999999941, 52.370000000000005,
            58.759999999999991, 58.759999999999991, 58.759999999999991,
            58.759999999999991, 40.230000000000018, 31.690000000000055,
            30.879999999999995, 38.459999999999923, 38.459999999999923, 41.0,
            46.3599999999999, 47.32000000000005, 30.259999999999991,
            25.840000000000032, 18.389999999999986, 18.389999999999986,
            28.899999999999977, 31.139999999999986, 31.659999999999968,
            23.009999999999991, 23.009999999999991, 23.009999999999991,
            20.779999999999973, 13.459999999999923, 13.459999999999923,
            13.459999999999923, 13.789999999999964, 13.789999999999964,
            13.789999999999964, 9.67999999999995, 10.350000000000023,
            10.350000000000023, 14.580000000000041, 15.57000000000005,
            13.310000000000059, 16.170000000000073, 20.560000000000059,
            20.560000000000059, 20.560000000000059, 25.490000000000009,
            27.230000000000018, 16.309999999999945, 12.75, 14.360000000000014,
            19.509999999999991, 19.539999999999964, 19.539999999999964,
            19.539999999999964, 19.539999999999964, 19.539999999999964,
            18.169999999999959, 18.169999999999959, 18.169999999999959,
            7.0199999999999818, 6.7400000000000091, 7.1000000000000227,
            8.3500000000000227, 11.450000000000045, 14.120000000000005,
            14.120000000000005, 12.360000000000014, 10.459999999999923, 11.25,
            8.8400000000000318, 7.2999999999999545, 7.2999999999999545,
            7.2999999999999545, 11.240000000000009, 11.240000000000009,
            11.240000000000009, 11.240000000000009, 16.139999999999986,
            41.089999999999918, 44.959999999999923, 43.290000000000077,
            43.420000000000073, 43.420000000000073, 46.530000000000086,
            36.930000000000064, 12.430000000000064, 8.7699999999999818,
            23.649999999999977, 23.649999999999977, 29.799999999999955,
            27.600000000000023, 29.879999999999995, 35.629999999999995,
            45.940000000000055, 28.539999999999964, 30.909999999999968,
            27.620000000000005
        ]

        self.tr_period_10_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, 22.75, 12.769999999999982, 13.319999999999936,
            10.090000000000032, 10.090000000000032, 9.9900000000000091,
            22.720000000000027, 26.419999999999959, 41.710000000000036,
            41.710000000000036, 53.42999999999995, 53.559999999999945,
            51.009999999999991, 45.120000000000005, 45.120000000000005,
            30.839999999999918, 27.139999999999986, 25.110000000000014,
            25.110000000000014, 25.110000000000014, 25.110000000000014,
            13.560000000000059, 14.280000000000086, 32.939999999999941,
            32.939999999999941, 32.939999999999941, 52.370000000000005,
            58.759999999999991, 58.759999999999991, 58.759999999999991,
            58.759999999999991, 58.759999999999991, 58.759999999999991,
            40.230000000000018, 39.269999999999982, 38.459999999999923, 41.0,
            47.449999999999932, 54.639999999999986, 53.549999999999955,
            47.32000000000005, 30.259999999999991, 25.840000000000032,
            28.899999999999977, 31.139999999999986, 31.659999999999968,
            31.659999999999968, 31.659999999999968, 23.009999999999991,
            26.379999999999995, 26.379999999999995, 20.779999999999973,
            13.459999999999923, 13.789999999999964, 13.789999999999964,
            13.789999999999964, 13.789999999999964, 13.789999999999964,
            10.350000000000023, 14.580000000000041, 15.57000000000005,
            15.57000000000005, 16.170000000000073, 20.560000000000059,
            20.560000000000059, 20.560000000000059, 25.490000000000009,
            27.230000000000018, 27.230000000000018, 27.470000000000027,
            16.549999999999955, 19.509999999999991, 19.539999999999964,
            19.539999999999964, 19.539999999999964, 19.539999999999964,
            19.539999999999964, 19.539999999999964, 19.539999999999964,
            18.169999999999959, 18.169999999999959, 18.169999999999959,
            7.1000000000000227, 9.7999999999999545, 12.899999999999977,
            14.120000000000005, 14.120000000000005, 14.660000000000082, 15.75,
            14.600000000000023, 11.899999999999977, 11.539999999999964,
            8.8400000000000318, 7.2999999999999545, 11.240000000000009,
            11.240000000000009, 11.240000000000009, 11.240000000000009,
            17.149999999999977, 42.649999999999977, 45.509999999999991,
            49.279999999999973, 49.409999999999968, 43.420000000000073,
            46.530000000000086, 46.530000000000086, 47.530000000000086,
            38.139999999999986, 30.210000000000036, 26.340000000000032,
            29.799999999999955, 29.799999999999955, 32.079999999999927,
            39.300000000000068, 49.82000000000005, 46.149999999999977,
            48.310000000000059, 30.909999999999968
        ]
Exemple #17
0
class TestChaikinMoneyFlow(unittest.TestCase):
    def setUp(self):
        """Create data to use for testing."""
        self.close_data = SampleData().get_sample_close_data()
        self.high_data = SampleData().get_sample_high_data()
        self.low_data = SampleData().get_sample_low_data()
        self.volume = SampleData().get_sample_volume()

        self.cmf_period_6_expected = [np.nan, np.nan, np.nan, np.nan, np.nan,
        0.003312520909302368, -0.0048613550605095908, 0.0076368288342983631,
        0.0065287223745628502, 0.010712462475030939, -0.016573767174777168,
        -0.022118018755417572, -0.029221567084304925, -0.033484757183585401,
        -0.041735293635758459, -0.042843154065898718, -0.020876675876256596,
        -0.024415870658692791, -0.026707069318664234, -0.080030925467134043,
        -0.057147769053649287, -0.065604808877281429, -0.065939141131154788,
        -0.046243722522452443, -0.039084580765582945, -0.023732518823802458,
        -0.014371385759892283, -0.0053841310735424572, -0.0073566431080532707,
        -0.023993372933344703, -0.029960428245405232, -0.020848896421251553,
        -0.033221845069711479, -0.023632410244811587, -0.0097050088230458322,
        -0.018370449199058135, 0.010361413074362698, 0.02995516308307368,
        0.035669013751713101, 0.042225745231989881, 0.016262549780505727,
        0.0013941588013852452, 0.012306879131758812, 0.0035702426675349218,
        0.016855940611040648, 0.017195749786707487, 0.035142495645697887,
        0.081928386974877379, 0.074639303829334827, 0.059587959294833265,
        0.025673521303580357, -0.0058017021658257461, -0.017649987961487128,
        -0.037743680456322731, -0.030009726186828133, -0.035697538763242824,
        -0.037644159883863451, 0.0048928404466888412, -0.00090102511926272368,
        0.0035648800422953685, -0.015052762227444404, 0.014071386096076447,
        0.03508329543861937, 0.012371868491255654, 0.021424949522295789,
        0.020558640966843865, 0.064448403594026746, 0.052176586584946193,
        -0.019569995625100225, -0.028186526955462123, -0.031094787908345023,
        -0.032460504024932439, -0.058198150002280631, -0.043503190797697537,
        -0.00095594109778578086, -0.010813889014902886, -0.011190581326110635,
        0.0078677120282683397, 0.037517542650319986, 0.044658480463605946,
        0.055190082593348115, 0.071897357104455467, 0.073915056586359301,
        0.07101148964635963, 0.059849856842446009, 0.059094210936938292,
        0.03287724077897463, 0.044715034918426266, 0.045192127365791333,
        0.033795150822328299, 0.075347022889300272, 0.060429544725187107,
        0.081840951426436659, 0.037721963312571133, 0.032639794237848713,
        0.022413515752428483, 0.0050258198847992113, 0.010372825841295268,
        -0.00083449577106293733, 0.0085669902231504426, 0.027089129950182974,
        0.03956141033382661, 0.044011605196096544, 0.038891332225638738,
        0.027574878189471158, 0.046321405729603714, 0.041172145145542835,
        0.034642007487542176, 0.014260177160802688, 0.0082988065208204845,
        0.017126773507882866, 0.014741503914037739, 0.016010639972291973,
        0.025326112362985931, 0.034629648875386297, 0.014997042039988612,
        0.01069599087866673, 0.011127907594170367, -0.0080168866293592808,
        -0.013671648032558471, -0.026946141394489087, -0.021756121749873004,
        -0.032467558230566636, -0.041891312663086974, -0.035822604814123339,
        -0.031212648439507711, -0.040638532850568315]

        self.cmf_period_8_expected = [np.nan, np.nan, np.nan, np.nan, np.nan,
        np.nan, np.nan, 0.0081185024674913005, 0.0025371802819565883,
        -0.0010644977834666388, -0.0056728301312701027, -0.0041694952276188808,
        -0.027797521862243494, -0.014603048497697219, -0.019669640273245477,
        -0.043772436549748425, -0.032246251569552471, -0.035485601011810967,
        -0.038497579799628007, -0.056104562803820458, -0.040592663917418982,
        -0.06878156913062386, -0.051868037982436971, -0.039076571889279231,
        -0.050731239889772968, -0.053229551728136919, -0.030648158861072514,
        -0.012411553304442827, -0.013827755337462506, -0.0087894337832712336,
        -0.02372021526121806, -0.034115196226625788, -0.025887629022838941,
        -0.012678892347838255, -0.010229402522448557, -0.018380015220900599,
        -0.0091200962156104716, 0.0079882390294293473, 0.025256686134179286,
        0.036646526288534528, 0.022578841768494146, 0.00037994399427053205,
        0.0094056760373523677, 0.015170928752505568, 0.024780406255827572,
        0.023985104430904548, 0.025206632383119276, 0.027437965711461888,
        0.040771722434282294, 0.057773298969144654, 0.042888453362141608,
        0.034118953538708363, 0.0086195557061872017, -0.0053082066228187265,
        -0.0073276947410392933, -0.040339954980860432, -0.044024960336941268,
        -0.008372116834863547, -0.010894944701009993, 0.002069543889197569,
        -0.0070732478803152863, -0.0027650689324161004, 0.003099300977691961,
        0.028980930474517174, 0.032897879595979874, 0.011512894812962913,
        0.037606534276955164, 0.03161087470746074, 0.0014348407984348796,
        -0.0076208128785508226, -0.02255891656436438, -0.024463692779761438,
        -0.031399038040626388, -0.025163213707663782, -0.029551186437460762,
        -0.03645993477631073, -0.015706223008120388, 0.0015586402908818618,
        0.019379406270457197, 0.033617486164410258, 0.056610182531136054,
        0.051801585060995865, 0.043696289983268924, 0.064339502557726136,
        0.073499010373059309, 0.069989285678150617, 0.055791870559251916,
        0.053098040911644169, 0.03330390300209949, 0.034414825993031972,
        0.074668764622390055, 0.06129901630246664, 0.075081747905173607,
        0.037480226477018132, 0.032889925186722319, 0.020106235192252808,
        0.028204580027412218, 0.034341643352812236, 0.021887527518800701,
        0.0071316698495589425, -0.0052750838209651082, 0.015188886014108748,
        0.036061294242859893, 0.050278602384032256, 0.043130532971042447,
        0.034563264668915718, 0.026040168606977436, 0.034587936909265836,
        0.02876909144339216, 0.03469067860193259, 0.024532129642417532,
        0.014883586477139587, 0.016726987370967537, 0.012188281555131105,
        0.016841358495234233, 0.020078868602802388, 0.02524487617720117,
        0.017970496234460627, -0.0030203029703223822, -0.0096650004775112285,
        -0.016473215917856138, -0.015549623508933264, -0.022702905873274063,
        -0.024710955783392941, -0.038703957202912316, -0.041452776726492772,
        -0.041157742958483921]

        self.cmf_period_10_expected = [np.nan, np.nan, np.nan, np.nan, np.nan,
        np.nan, np.nan, np.nan, np.nan, 0.00097005442845879376,
        -0.0064199268473497896, -0.00981630771032585, -0.01539385491408015,
        -0.0019407376530060584, -0.021201955642506994, -0.025200322249567,
        -0.016200232414935737, -0.037811531108227089, -0.044026758965205533,
        -0.058534077028334068, -0.046548203377963476, -0.051983201626286779,
        -0.039512066195189634, -0.046003067307706036, -0.042132407072485917,
        -0.046334449727507415, -0.04133207922271704, -0.039018647891641382,
        -0.027334922695207469, -0.013686335276416654, -0.025804171596085258,
        -0.019944595085910129, -0.021723804450678588, -0.024950741592236047,
        -0.0092280984329375388, -0.010856808489330882, -0.0096349938344056571,
        0.0029175322839710091, 0.0082428396230406504, 0.019496326105300225,
        0.017285768031592645, 0.001954688027274251, 0.014596209539885734,
        0.012571839892109608, 0.020738139163870514, 0.030856858152494813,
        0.03049958536258458, 0.031648221684272407, 0.030366540308311901,
        0.01776324429095813, 0.025830127055555277, 0.040411485921986831,
        0.026592245316573945, 0.027352531826117733, 0.011207243951777237,
        -0.015716720734726072, -0.024814013216715024, -0.016909757167403869,
        -0.020703472631734419, -0.0074657409934277136, -0.014086706455012497,
        -0.0029493218051483677, 0.006586361206931457, 0.010589147609965469,
        0.0058748142910560203, 0.025036458880156737, 0.042389180311841836,
        0.021170442660274864, -0.00465179736632976, -0.011478833549338071,
        -0.0063553451892820632, -0.0096521313596829271, -0.024853981082800104,
        -0.019947952803719058, -0.012644857452069816, -0.02282098981637035,
        -0.035389803360523206, -0.022302450718866752, 0.0096606229097797279,
        0.023530102149541612, 0.039575306318488879, 0.041663203623864616,
        0.046846269401670804, 0.049147804760104809, 0.046532703832447543,
        0.064532281083369877, 0.067884435413460148, 0.063432902363722246,
        0.0517389246620805, 0.043502469230294938, 0.058961336245194944,
        0.057160593743307196, 0.074671739501174617, 0.04045293665095788,
        0.033758229773749648, 0.022087082552981425, 0.028947816115888845,
        0.030952954384161221, 0.038982492918535165, 0.028150926559148217,
        0.014865469834815303, 0.01170230670122519, 0.0083995509197173843,
        0.030907101733504111, 0.036899328396437309, 0.04492090321100161,
        0.039661457831712481, 0.026671091384831067, 0.018272102875036875,
        0.034633486248171697, 0.033332625706768454, 0.034554336623121552,
        0.02330355950897256, 0.012915875614998074, 0.01725568578495628,
        0.010453027043024619, 0.013367439404347276, 0.021473243280857524,
        0.012916789497828559, 0.0011786722377113861, -0.010994206543604062,
        -0.012037897092003943, -0.015417115757289098, -0.01932122426096974,
        -0.029475944251071699, -0.027951042217520154, -0.042543393896090208]

    def test_cmf_period_6(self):
        period = 6
        cmf = chaikin_money_flow.chaikin_money_flow(self.close_data, self.high_data, self.low_data, self.volume, period)
        np.testing.assert_array_equal(cmf, self.cmf_period_6_expected)

    def test_cmf_period_8(self):
        period = 8
        cmf = chaikin_money_flow.chaikin_money_flow(self.close_data, self.high_data, self.low_data, self.volume, period)
        np.testing.assert_array_equal(cmf, self.cmf_period_8_expected)

    def test_cmf_period_10(self):
        period = 10
        cmf = chaikin_money_flow.chaikin_money_flow(self.close_data, self.high_data, self.low_data, self.volume, period)
        np.testing.assert_array_equal(cmf, self.cmf_period_10_expected)

    def test_cmf_invalid_period(self):
        period = 128
        with self.assertRaises(Exception) as cm:
            chaikin_money_flow.chaikin_money_flow(self.close_data, self.high_data, self.low_data, self.volume, period)
        expected = "Error: data_len < period"
        self.assertEqual(str(cm.exception), expected)

    def test_cmf_invalid_data(self):
        self.close_data.append(1)
        period = 6
        with self.assertRaises(Exception) as cm:
            chaikin_money_flow.chaikin_money_flow(self.close_data, self.high_data, self.low_data, self.volume, period)
        expected = ("Error: mismatched data lengths, check to ensure that all input data is the same length and valid")
        self.assertEqual(str(cm.exception), expected)
Exemple #18
0
    def setUp(self):
        """Create data to use for testing."""
        self.data = SampleData().get_sample_close_data()

        self.hma_period_6_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, 811.69349206349204,
            814.12269841269847, 814.7884126984128, 812.54301587301563,
            812.76507936507926, 815.84714285714279, 817.38571428571413,
            813.18317460317473, 808.87650793650789, 800.66285714285698,
            792.19317460317461, 780.45333333333326, 773.55539682539677,
            766.2136507936508, 761.45111111111135, 765.67015873015896,
            779.60444444444454, 789.36746031746031, 788.32793650793667,
            782.25698412698432, 781.09047619047612, 783.47984126984136,
            781.29365079365073, 781.73365079365067, 781.5338095238094,
            778.5084126984126, 764.47793650793665, 760.38761904761907,
            769.34603174603183, 792.08984126984149, 812.3779365079364,
            816.01476190476194, 799.37571428571437, 782.61063492063511,
            779.18682539682538, 792.12841269841238, 807.45666666666659,
            819.50285714285701, 823.32126984126955, 824.20666666666659,
            827.10682539682546, 833.52063492063496, 832.59650793650769,
            826.18523809523811, 823.40587301587311, 822.29301587301597,
            814.53809523809525, 805.10174603174619, 800.19238095238109,
            804.06031746031749, 808.92031746031751, 813.08206349206341,
            808.62460317460318, 803.11682539682533, 799.81793650793634,
            800.30349206349183, 800.65809523809514, 802.1258730158728,
            802.99793650793652, 806.68492063492067, 810.57539682539698,
            808.63238095238091, 810.03047619047595, 814.20158730158721,
            812.31285714285741, 804.47984126984136, 796.12682539682555,
            793.56253968253952, 796.62619047619046, 795.28952380952387,
            790.46730158730145, 791.72126984126987, 791.73015873015868,
            796.58841269841275, 804.44523809523798, 810.22777777777776,
            806.01158730158716, 796.22888888888883, 788.649523809524,
            787.49365079365089, 791.48174603174596, 794.16841269841245,
            793.41873015872989, 792.65873015873012, 794.41380952380962,
            796.79888888888911, 799.19206349206388, 801.93349206349228,
            805.00666666666655, 804.73412698412687, 804.90761904761928,
            806.26936507936523, 808.18873015872998, 809.21285714285705,
            808.80190476190501, 806.85888888888883, 805.96285714285693,
            801.63365079365076, 797.94587301587296, 797.31587301587331,
            799.16349206349207, 796.2311111111112, 779.59984126984125,
            761.98936507936514, 752.09698412698401, 751.06063492063493,
            754.41619047619054, 755.39523809523814, 755.67142857142869,
            754.42920634920654, 753.15571428571423, 744.10952380952369,
            735.09650793650792, 728.31825396825388, 727.54174603174613,
            727.11126984126986, 721.96650793650804, 711.58444444444456,
            704.96015873015892, 702.35476190476186, 705.01380952380953
        ]

        self.hma_period_8_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            814.87485185185187, 813.36083333333352, 813.55231481481485,
            815.52453703703713, 816.60727777777777, 813.98846296296279,
            810.63998148148141, 802.97816666666677, 794.1872222222222,
            782.91662962962971, 774.48968518518529, 766.42933333333337,
            760.50948148148143, 763.24012962962979, 774.202388888889,
            784.22724074074085, 787.44496296296302, 785.29031481481491,
            783.6895370370371, 783.7029444444446, 781.14409259259253,
            781.8435740740739, 781.75061111111097, 778.72283333333326,
            767.65135185185193, 762.56981481481489, 767.40042592592602,
            784.3859444444447, 804.96877777777797, 813.94570370370366,
            805.61705555555579, 791.71831481481502, 783.63575925925932,
            788.7425925925927, 800.89879629629615, 814.41779629629616,
            822.57618518518518, 826.01870370370352, 829.13720370370356,
            833.73727777777776, 833.25348148148157, 828.76670370370357,
            826.15944444444449, 823.14057407407392, 815.59246296296305,
            807.42929629629634, 801.63170370370381, 802.28418518518538,
            805.72983333333332, 810.31735185185187, 808.87588888888888,
            805.00875925925936, 801.68362962962965, 800.02007407407393,
            799.71653703703703, 801.08372222222215, 802.32698148148131,
            805.70177777777769, 809.56007407407412, 808.71794444444447,
            810.6441111111111, 814.02403703703703, 812.15257407407398,
            806.73107407407406, 799.33396296296314, 794.71192592592604,
            795.253462962963, 793.69187037037045, 790.56812962962977,
            791.91151851851839, 790.98842592592609, 794.78342592592605,
            802.43051851851851, 807.94801851851844, 806.9679259259259,
            800.01377777777782, 792.35214814814833, 788.40029629629623,
            789.58801851851831, 791.8107407407407, 792.51031481481459,
            793.013222222222, 794.36855555555542, 796.08503703703707,
            798.46237037037065, 801.42464814814832, 804.52703703703719,
            805.00503703703714, 805.58818518518513, 806.73112962962966,
            807.91777777777781, 809.11981481481473, 809.15120370370369,
            807.68392592592591, 806.69788888888888, 802.65225925925915,
            798.90994444444448, 797.67529629629632, 798.04609259259269,
            795.81775925925933, 782.72083333333342, 767.09688888888877,
            755.16894444444449, 749.3611111111112, 750.40946296296295,
            751.94831481481481, 753.80949999999996, 754.11581481481483,
            753.11190740740756, 745.79924074074097, 737.47272222222216,
            730.18538888888872, 726.73574074074077, 725.42294444444451,
            721.21061111111112, 713.11685185185195, 706.6011666666667,
            702.21687037037054, 702.67659259259256
        ]

        self.hma_period_10_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, 815.32591919191918, 816.12421212121228,
            814.75205050505053, 812.61346464646465, 806.92502020202016,
            799.51380808080796, 789.05283838383832, 780.03197979797972,
            770.46478787878777, 763.25721212121198, 761.58636363636344,
            767.63827272727269, 775.77882828282827, 781.8372626262626,
            784.24756565656571, 785.22970707070715, 785.18085858585857,
            783.0120808080809, 782.54077777777786, 781.85660606060594,
            779.98356565656559, 772.14741414141406, 767.10270707070697,
            766.90434343434356, 776.80352525252545, 791.87784848484864,
            804.56147474747468, 806.02061616161609, 800.17926262626258,
            792.75338383838391, 791.47886868686874, 796.00545454545443,
            805.8371717171716, 815.15221212121196, 822.61240404040382,
            828.08223232323223, 833.26813131313122, 834.26621212121211,
            832.05248484848471, 829.48733333333337, 826.34853535353557,
            819.84758585858583, 812.29935353535359, 805.71183838383843,
            803.18005050505053, 803.32984848484841, 806.45084848484851,
            806.91360606060607, 805.94520202020215, 803.5248181818182,
            801.79042424242425, 800.13414141414125, 800.31101010101008,
            800.98313131313125, 803.67286868686858, 806.94001010100999,
            808.04006060606059, 810.06931313131315, 812.73437373737363,
            812.65314141414137, 809.27161616161618, 803.78738383838379,
            798.82522222222212, 796.3195252525253, 793.77120202020194,
            791.12181818181818, 791.15825252525258, 790.53879797979789,
            792.94096969696966, 798.02382828282828, 803.94456565656583,
            805.53484848484857, 802.95450505050519, 797.65067676767683,
            792.79690909090914, 790.60606060606062, 790.43761616161612,
            790.83787878787859, 791.72852525252495, 793.3122626262624,
            795.02549494949506, 797.12912121212105, 799.79068686868698,
            802.83097979798004, 804.30681818181836, 805.59772727272741,
            806.70973737373754, 807.88142424242449, 808.77309090909091,
            809.22807070707074, 808.56136363636358, 807.74880808080832,
            804.7325454545454, 801.46482828282808, 799.03266666666661,
            798.22172727272743, 796.06696969696986, 787.46221212121225,
            775.40901010101027, 763.10101010101005, 754.05883838383841,
            749.79986868686865, 748.77178787878802, 750.07509090909082,
            751.28872727272721, 752.02005050505034, 747.90270707070704,
            741.89556565656574, 734.59636363636366, 729.5704545454546,
            725.75333333333344, 721.78834343434357, 715.49432323232338,
            709.65518181818186, 704.43677777777759, 702.50812121212118
        ]
Exemple #19
0
    def setUp(self):
        """Create data to use for testing."""
        self.close_data = SampleData().get_sample_close_data()
        self.high_data = SampleData().get_sample_high_data()
        self.low_data = SampleData().get_sample_low_data()
        self.volume = SampleData().get_sample_volume()

        self.tenkansen_default_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            11.375, 6.160000000000025, 5.5399999999999636, 5.0450000000000159,
            5.0450000000000159, 4.9950000000000045, 4.9950000000000045,
            11.360000000000014, 13.20999999999998, 20.855000000000018,
            20.855000000000018, 26.714999999999975, 25.504999999999995,
            22.560000000000002, 22.560000000000002, 15.419999999999959,
            13.569999999999993, 12.555000000000007, 12.555000000000007,
            12.555000000000007, 12.555000000000007, 6.7800000000000296,
            6.7350000000000136, 5.5, 16.46999999999997, 16.46999999999997,
            16.46999999999997, 26.185000000000002, 29.379999999999995,
            29.379999999999995, 29.379999999999995, 29.379999999999995,
            29.379999999999995, 20.115000000000009, 15.845000000000027,
            19.229999999999961, 19.229999999999961, 20.5, 23.724999999999966,
            26.774999999999977, 23.660000000000025, 15.129999999999995,
            12.920000000000016, 9.1949999999999932, 14.449999999999989,
            15.569999999999993, 15.829999999999984, 15.829999999999984,
            11.504999999999995, 11.504999999999995, 13.189999999999998,
            10.389999999999986, 6.7299999999999613, 6.7299999999999613,
            6.8949999999999818, 6.8949999999999818, 6.8949999999999818,
            6.8949999999999818, 5.1750000000000114, 5.1750000000000114,
            7.2900000000000205, 7.785000000000025, 7.785000000000025,
            8.0850000000000364, 10.28000000000003, 10.28000000000003,
            10.28000000000003, 12.745000000000005, 13.615000000000009,
            13.615000000000009, 8.2749999999999773, 7.1800000000000068,
            9.7549999999999955, 9.7699999999999818, 9.7699999999999818,
            9.7699999999999818, 9.7699999999999818, 9.7699999999999818,
            9.7699999999999818, 9.0849999999999795, 9.0849999999999795,
            9.0849999999999795, 3.5099999999999909, 3.5500000000000114,
            4.8999999999999773, 5.7250000000000227, 7.0600000000000023,
            7.0600000000000023, 7.3300000000000409, 6.7249999999999659,
            5.8050000000000068, 5.7699999999999818, 4.4200000000000159,
            3.6499999999999773, 3.6499999999999773, 5.6200000000000045,
            5.6200000000000045, 5.6200000000000045, 5.6200000000000045,
            8.5749999999999886, 20.819999999999993, 22.479999999999961,
            24.639999999999986, 21.710000000000036, 21.710000000000036,
            23.265000000000043, 23.265000000000043, 18.965000000000032,
            6.3199999999999932, 13.170000000000016, 11.824999999999989,
            14.899999999999977, 14.899999999999977, 14.939999999999998,
            19.650000000000034, 23.074999999999989, 22.970000000000027,
            15.454999999999984, 15.454999999999984
        ]

        self.kijunsen_default_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, 26.779999999999973, 26.779999999999973, 26.779999999999973,
            26.779999999999973, 26.779999999999973, 26.779999999999973,
            26.779999999999973, 32.33499999999998, 32.33499999999998,
            32.33499999999998, 32.33499999999998, 32.33499999999998,
            31.060000000000002, 29.379999999999995, 29.379999999999995,
            29.379999999999995, 29.379999999999995, 29.379999999999995,
            33.169999999999959, 33.169999999999959, 34.439999999999998,
            37.664999999999964, 41.259999999999991, 41.259999999999991,
            41.259999999999991, 41.259999999999991, 41.259999999999991,
            41.259999999999991, 41.259999999999991, 41.259999999999991,
            41.259999999999991, 41.259999999999991, 41.259999999999991,
            31.995000000000005, 27.725000000000023, 27.319999999999993,
            27.319999999999993, 27.319999999999993, 27.319999999999993,
            26.774999999999977, 23.660000000000025, 17.680000000000007,
            17.680000000000007, 17.680000000000007, 17.680000000000007,
            17.680000000000007, 17.980000000000018, 20.175000000000011,
            15.850000000000023, 15.850000000000023, 18.314999999999998,
            16.384999999999991, 13.615000000000009, 13.735000000000014,
            13.735000000000014, 13.735000000000014, 13.735000000000014,
            13.735000000000014, 13.735000000000014, 13.735000000000014,
            13.735000000000014, 13.735000000000014, 13.735000000000014,
            13.735000000000014, 13.735000000000014, 13.735000000000014,
            13.735000000000014, 13.735000000000014, 13.735000000000014,
            13.735000000000014, 9.7699999999999818, 9.7699999999999818,
            9.7699999999999818, 9.8600000000000136, 10.004999999999995,
            10.004999999999995, 10.004999999999995, 10.004999999999995,
            10.004999999999995, 9.3199999999999932, 9.3199999999999932,
            9.3199999999999932, 9.3199999999999932, 21.324999999999989,
            23.259999999999991, 25.420000000000016, 25.485000000000014,
            25.485000000000014, 27.04000000000002, 27.04000000000002,
            27.54000000000002, 27.644999999999982, 36.430000000000007,
            36.430000000000007, 39.504999999999995, 39.504999999999995,
            40.644999999999982, 45.355000000000018, 50.615000000000009,
            50.615000000000009, 51.295000000000016, 51.019999999999982
        ]

        self.chiku_span_expected = [
            779, 785, 784.8, 775.97, 786.16, 779.98, 775.16, 753.22, 771.75,
            780.29, 805.59, 811.98, 802.03, 781.1, 782.19, 788.42, 805.48,
            809.9, 819.56, 817.35, 822.1, 828.55, 835.74, 824.06, 821.63,
            827.09, 821.49, 806.84, 804.6, 804.08, 811.77, 809.57, 814.17,
            800.71, 803.08, 801.23, 802.79, 800.38, 804.06, 802.64, 810.06,
            810.73, 802.65, 814.96, 815.95, 805.03, 799.78, 795.39, 797.97,
            801.23, 790.46, 788.72, 798.82, 788.48, 802.84, 807.99, 808.02,
            796.87, 791.4, 789.85, 791.92, 795.82, 793.22, 791.3, 793.6,
            796.59, 796.95, 799.65, 802.75, 805.42, 801.19, 805.96, 807.05,
            808.2, 808.49, 807.48, 805.23, 806.93, 797.25, 798.92, 800.12,
            800.94, 791.34, 765.84, 761.97, 757.65, 757.52, 759.28, 754.41,
            757.08, 753.41, 753.2, 735.63, 735.8, 729.48, 732.51, 727.2,
            717.78, 707.26, 708.97, 704.89, 710.25
        ]

        self.senkou_a_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, 19.66749999999999, 19.66749999999999,
            19.66749999999999, 19.66749999999999, 16.780000000000001,
            16.757499999999993, 16.139999999999986, 24.402499999999975,
            24.402499999999975, 24.402499999999975, 29.259999999999991,
            30.857499999999987, 30.219999999999999, 29.379999999999995,
            29.379999999999995, 29.379999999999995, 24.747500000000002,
            22.612500000000011, 26.19999999999996, 26.19999999999996,
            27.469999999999999, 30.694999999999965, 34.017499999999984,
            32.460000000000008, 28.194999999999993, 27.090000000000003,
            25.227499999999992, 27.85499999999999, 28.414999999999992,
            28.544999999999987, 28.544999999999987, 26.382499999999993,
            26.382499999999993, 22.592500000000001, 19.057500000000005,
            17.024999999999977, 17.024999999999977, 17.107499999999987,
            17.107499999999987, 16.83499999999998, 15.277500000000003,
            11.427500000000009, 11.427500000000009, 12.485000000000014,
            12.732500000000016, 12.732500000000016, 13.032500000000027,
            15.22750000000002, 13.065000000000026, 13.065000000000026,
            15.530000000000001, 15.0, 13.615000000000009, 11.004999999999995,
            10.45750000000001, 11.745000000000005, 11.752499999999998,
            11.752499999999998, 11.752499999999998, 11.752499999999998,
            11.752499999999998, 11.752499999999998, 11.409999999999997,
            11.409999999999997, 11.409999999999997, 8.6225000000000023,
            8.6425000000000125, 9.3174999999999955, 9.7300000000000182,
            10.397500000000008, 8.414999999999992, 8.5500000000000114,
            8.2474999999999739, 7.8325000000000102, 7.8874999999999886,
            7.2125000000000057, 6.8274999999999864, 6.8274999999999864, 7.8125,
            7.4699999999999989, 7.4699999999999989, 7.4699999999999989,
            8.9474999999999909, 21.072499999999991, 22.869999999999976,
            25.030000000000001, 23.597500000000025, 23.597500000000025,
            25.152500000000032, 25.152500000000032, 23.252500000000026,
            16.982499999999987, 24.800000000000011, 24.127499999999998,
            27.202499999999986, 27.202499999999986, 27.79249999999999,
            32.502500000000026, 36.844999999999999, 36.792500000000018, 33.375,
            33.237499999999983
        ]

        self.senkou_b_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, 41.259999999999991,
            41.259999999999991, 41.259999999999991, 41.259999999999991,
            41.259999999999991, 41.259999999999991, 41.259999999999991,
            41.259999999999991, 41.259999999999991, 41.259999999999991,
            41.259999999999991, 41.259999999999991, 41.259999999999991,
            41.259999999999991, 41.259999999999991, 41.259999999999991,
            41.259999999999991, 41.259999999999991, 41.259999999999991,
            41.259999999999991, 41.259999999999991, 41.259999999999991,
            41.259999999999991, 41.259999999999991, 41.259999999999991,
            41.259999999999991, 41.259999999999991, 41.259999999999991,
            41.259999999999991, 41.259999999999991, 41.259999999999991,
            41.259999999999991, 41.259999999999991, 31.995000000000005,
            27.725000000000023, 27.319999999999993, 27.319999999999993,
            27.319999999999993, 27.319999999999993, 26.774999999999977,
            23.660000000000025, 23.629999999999995, 23.629999999999995,
            23.629999999999995, 23.629999999999995, 23.629999999999995,
            23.629999999999995, 23.629999999999995, 19.305000000000007,
            19.305000000000007, 19.305000000000007, 16.504999999999995,
            13.735000000000014, 13.735000000000014, 13.735000000000014,
            13.735000000000014, 13.735000000000014, 25.055000000000007,
            26.990000000000009, 29.150000000000034, 29.215000000000032,
            29.215000000000032, 30.770000000000039, 30.770000000000039,
            31.270000000000039, 31.375, 40.160000000000025, 40.160000000000025,
            43.235000000000014, 43.235000000000014, 40.644999999999982,
            45.355000000000018, 50.615000000000009, 50.615000000000009,
            51.800000000000011, 51.800000000000011
        ]
Exemple #20
0
    def setUp(self):
        """Create data to use for testing."""
        self.data = SampleData().get_sample_close_data()

        self.smmma_period_6_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, 246.68995370370371,
            247.56712962962965, 248.35231481481483, 248.0858796296296,
            247.64046296296297, 248.79050925925927, 249.35388888888892,
            249.00157407407406, 247.59259259259261, 247.78032407407409,
            245.06074074074073, 243.88435185185185, 240.37050925925928,
            239.85125000000002, 236.55236111111108, 235.48625000000001,
            236.96472222222224, 239.17773148148149, 238.79185185185187,
            237.90601851851852, 238.04259259259257, 239.52106481481482,
            239.69421296296295, 237.91074074074075, 239.61763888888891,
            238.5825462962963, 237.69032407407406, 233.29800925925929,
            236.08425925925926, 237.60759259259257, 242.27402777777777,
            244.07976851851853, 243.04342592592593, 240.200462962963,
            240.62379629629632, 241.85032407407411, 244.69111111111113,
            245.37962962962965, 247.39541666666665, 247.86620370370372,
            249.581712962963, 251.58564814814812, 253.48444444444445,
            251.86555555555552, 251.5084722222222, 252.6439351851852,
            251.69648148148147, 248.75226851851855, 247.65810185185191,
            247.10893518518523, 248.1623611111111, 247.39013888888886,
            247.98736111111111, 245.60212962962964, 245.96194444444447,
            245.58763888888893, 245.63976851851848, 245.02537037037033,
            245.40467592592594, 245.21268518518522, 246.6109259259259,
            246.9425, 245.59259259259258, 247.98175925925929,
            248.42199074074074, 246.65731481481484, 245.54435185185184,
            244.45759259259262, 244.77925925925925, 245.00476851851855,
            242.61972222222224, 241.9521759259259, 243.61328703703703,
            241.73000000000002, 244.2360648148148, 245.25087962962962,
            245.66236111111115, 243.99268518518519, 242.9092592592593,
            242.68263888888887, 242.77486111111111, 243.14314814814816,
            242.36722222222224, 241.918287037037, 242.35254629629631,
            243.00689814814814, 243.18333333333337, 243.72199074074072,
            244.45925925925926, 245.23111111111112, 244.70180555555558,
            245.71370370370369, 246.12916666666669, 246.51874999999998,
            246.6999537037037, 246.57930555555552, 246.2978240740741,
            246.60361111111112, 244.76342592592593, 244.82694444444442,
            244.83319444444444, 244.81847222222223, 242.89694444444444,
            237.69578703703704, 236.23412037037039, 234.55879629629626,
            233.5510185185185, 232.88, 231.21347222222221, 231.45569444444445,
            230.6458796296296, 230.50787037037037, 227.07282407407411,
            226.55763888888887, 224.92722222222224, 224.86347222222221,
            223.37175925925928, 220.98185185185184, 218.57180555555556,
            218.23574074074077, 216.98652777777775, 217.36458333333334
        ]

        self.smmma_period_8_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            190.14798828125001, 190.08460937500001, 189.84726562500001,
            190.72499999999999, 191.113828125, 190.8981640625,
            189.94382812499998, 190.09998046875, 188.0411328125,
            187.29111328125001, 184.91966796874999, 184.6629296875,
            182.21244140624998, 181.49878906250001, 182.504765625,
            183.92619140624998, 183.34169921874999, 182.48886718750001,
            182.37742187500001, 183.22011718750002, 183.473203125,
            182.52859375, 183.94289062500002, 183.04105468749998,
            182.29322265625001, 179.18185546875, 181.398984375,
            182.40208984374999, 185.84882812500001, 187.13990234375001,
            186.113125, 183.51218750000001, 183.74455078125001,
            185.00455078125, 187.598203125, 188.55552734374999,
            189.95402343749998, 189.75119140625003, 190.61933593750001,
            192.07431640624998, 193.7051953125, 192.73246093749998,
            192.64951171874998, 193.56703125000001, 192.89341796874999,
            190.91847656250002, 190.39921874999999, 189.99966796875003,
            190.63320312499999, 190.16009765625, 190.63310546874999,
            188.58994140625001, 188.6344921875, 188.32654296875,
            188.49679687499997, 188.1449609375, 188.49955078124998,
            188.22730468750001, 189.09861328124998, 189.31935546874999,
            188.30347656250001, 190.02994140625, 190.33361328125,
            189.03218749999999, 188.31742187499998, 187.66955078125,
            187.82675781250001, 188.104375, 186.59146484375,
            186.01521484375002, 187.043515625, 185.52474609375003,
            187.36158203125001, 188.17759765624999, 188.31874999999999,
            186.86539062500003, 186.19449218749997, 186.01619140625002,
            186.18060546875, 186.76845703124999, 186.31193359375001, 185.84375,
            185.93410156250002, 186.30402343750001, 186.42490234375001,
            186.89638671874999, 187.43195312500001, 187.89695312499998,
            187.47716796875002, 188.27384765625001, 188.59398437499999,
            188.89646484375001, 189.09048828125, 189.0712890625,
            188.8239453125, 189.05708984375002, 187.79322265625001,
            187.90572265624999, 187.96097656249998, 187.96421875000001,
            186.52974609375002, 182.77294921875, 181.69775390625,
            180.48400390625, 179.92457031250001, 179.60261718749999,
            178.36892578125003, 178.10302734375, 177.12570312499997,
            176.926640625, 174.3702734375, 174.09279296874999, 172.91943359375,
            172.9321875, 171.89642578125, 170.18162109374998,
            168.23566406250001, 167.84470703125001, 166.91443359375,
            167.23511718750001
        ]

        self.smmma_period_10_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, 153.67744999999999, 154.46725000000001, 154.82634000000002,
            154.66827000000001, 153.90600000000001, 154.07585,
            152.51725999999999, 151.96069000000003, 150.08051, 149.97599,
            148.19157000000001, 147.71669, 148.49359999999999, 149.6165,
            149.05250999999998, 148.23025999999999, 147.96473,
            148.50650000000002, 148.56408000000002, 147.66083,
            148.87512999999998, 148.39798000000002, 147.90949999999998,
            145.38952, 147.11615999999998, 147.97096999999999,
            150.74028000000001, 151.62209999999999, 150.78217000000001,
            148.73534000000001, 148.80860999999999, 149.50757000000002,
            151.48645000000002, 152.43856999999997, 153.83485999999999,
            153.94740000000002, 154.57098999999999, 155.36511999999999,
            156.38750999999999, 155.60615000000001, 155.71811,
            156.61214000000001, 156.19622999999999, 154.70368999999999,
            154.34504999999999, 154.17362, 154.84965, 154.45883000000001,
            154.72469999999998, 153.16855000000001, 153.23859999999999,
            152.82086000000001, 152.80856, 152.50942000000001,
            152.87255999999996, 152.7176, 153.44421, 153.52164999999999,
            152.60997, 153.96922000000001, 154.18405000000001,
            153.12624999999997, 152.57415999999998, 152.09025000000003,
            152.29344, 152.60675000000001, 151.35335000000001,
            150.98126000000002, 151.95679000000001, 150.68447,
            152.00248000000002, 152.54411999999999, 152.62127999999998,
            151.51960000000003, 150.91347000000002, 150.65604999999999,
            150.87619000000001, 151.33009000000001, 151.01969,
            150.85306999999997, 150.99991, 151.19630999999998,
            151.13267999999999, 151.42770000000002, 151.83985000000001,
            152.24697999999998, 151.90741, 152.47566999999998,
            152.70913999999999, 152.97624000000002, 153.13925,
            153.13625999999999, 152.98578000000003, 153.22130000000001,
            152.2038, 152.31229999999999, 152.42267000000001,
            152.45949000000002, 151.35810000000001, 148.42686,
            147.62118000000001, 146.74070999999998, 146.29831999999999,
            146.04546999999999, 145.17291, 145.06334999999999, 144.27596,
            143.82530000000003, 141.56691000000001, 141.31354999999999,
            140.38914, 140.46588, 139.66199999999998, 138.34649999999999,
            136.87015, 136.60816, 135.76348000000002, 135.91293000000002
        ]
    def setUp(self):
        """Create data to use for testing."""
        self.data = SampleData().get_sample_close_data()

        self.tma_period_6_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, 809.53749999999991, 811.09222222222218,
            812.18555555555565, 812.73388888888894, 812.97722222222228,
            812.81555555555553, 811.76416666666671, 809.32611111111112,
            805.76972222222219, 801.20944444444456, 795.4805555555555,
            789.62333333333333, 784.38138888888886, 780.56499999999994,
            777.83472222222224, 776.71500000000003, 777.42277777777781,
            778.9141666666668, 780.08777777777777, 781.00472222222231,
            781.86055555555561, 782.20583333333343, 781.09416666666675,
            779.37222222222226, 778.14444444444428, 777.44611111111101,
            777.64277777777772, 778.6925, 781.39944444444461,
            784.75888888888903, 788.22416666666675, 791.14666666666665,
            793.12250000000006, 794.83888888888896, 796.78777777777793,
            799.55527777777786, 803.21166666666659, 807.7116666666667,
            812.66277777777771, 817.18444444444447, 820.96972222222223,
            823.62944444444429, 824.57138888888869, 823.80777777777769,
            822.09583333333342, 820.05250000000012, 817.25194444444458,
            814.26499999999999, 811.71083333333343, 809.97944444444454,
            808.72388888888884, 807.49277777777786, 806.49305555555554,
            805.41583333333335, 804.5625, 803.94527777777773,
            803.67111111111092, 803.64249999999993, 804.27416666666659,
            805.51694444444445, 806.77250000000004, 807.5486111111112,
            807.63472222222219, 807.59472222222223, 806.76833333333343,
            804.90361111111122, 802.5194444444445, 800.39416666666659,
            798.50305555555553, 796.87722222222237, 795.82055555555564,
            795.95972222222235, 796.77833333333331, 797.41750000000002,
            798.28666666666675, 798.71722222222218, 798.62194444444458,
            797.62777777777785, 796.25250000000005, 795.1444444444445,
            794.18555555555542, 793.66972222222228, 793.59833333333336,
            794.20277777777767, 795.35416666666663, 796.65527777777777,
            798.02944444444438, 799.54444444444437, 801.19055555555553,
            802.73138888888889, 803.9372222222222, 805.04444444444437,
            805.91833333333341, 806.23944444444442, 806.06527777777774,
            805.49916666666661, 804.69416666666666, 803.39111111111106,
            800.91972222222228, 797.7405555555556, 793.67277777777781,
            788.6541666666667, 782.65999999999997, 776.02583333333325,
            770.28972222222228, 765.29583333333346, 761.32472222222225,
            757.92888888888899, 755.03805555555562, 752.4805555555555,
            749.48388888888894, 745.99694444444447, 741.64972222222229,
            737.12249999999995, 732.50222222222226, 727.89138888888886,
            723.34472222222223
        ]

        self.tma_period_8_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, 811.30218750000006,
            811.75578125000004, 811.56750000000011, 810.74453124999991,
            809.16359375000002, 806.62343750000002, 803.16843749999998,
            799.24093749999997, 795.04375000000005, 791.01296875000003,
            787.13468749999993, 783.82640624999999, 781.20890625000004,
            779.74406250000004, 779.25812500000006, 779.43312500000002,
            779.77296875000002, 780.09328125000002, 780.16812500000003,
            780.08562500000005, 779.82359374999999, 779.56859374999999,
            779.69437500000004, 779.90750000000003, 780.28593750000005,
            780.9403125, 782.56625000000008, 784.83249999999998,
            787.63499999999999, 790.3309375, 792.54812500000003,
            794.83093750000012, 797.83765625000001, 801.57124999999996,
            805.31171874999995, 808.77750000000003, 812.04921875000002,
            815.1328125, 817.96828125000002, 820.21671874999993,
            821.34140624999998, 821.25484374999996, 820.38499999999999,
            819.14625000000001, 817.22671875000003, 814.989375,
            812.8285937500001, 810.91296875, 809.32187500000009,
            807.98484374999998, 806.76593750000006, 805.59937500000001,
            805.00156249999998, 804.6846875, 804.67000000000007,
            804.88921874999994, 805.2389062499999, 805.64218749999998,
            806.04046874999995, 806.31406249999998, 806.28265624999995,
            806.0675, 805.22781250000003, 803.91484375000005,
            802.27062500000011, 800.74109375, 799.52171874999999,
            798.64828125000008, 797.85515625000005, 797.26718750000009,
            797.10687499999995, 797.10640624999996, 797.47921874999997,
            797.65390624999998, 797.37093749999997, 796.70562500000005,
            796.10406249999994, 795.57453125000006, 795.18046875000005,
            795.06343749999996, 794.98171875000003, 795.17484375000004,
            795.85781250000002, 796.97624999999994, 798.28046874999995,
            799.67828125000005, 801.04531250000002, 802.28187500000001,
            803.39203125000006, 804.31609375000005, 804.90109374999997,
            805.16765625000005, 805.13937499999997, 804.66281249999997,
            803.41328124999995, 801.44906249999997, 798.69124999999997,
            795.37421874999995, 791.54781249999996, 787.11546874999999,
            782.11124999999993, 776.78234375, 771.90656250000006,
            767.29515624999999, 763.11234375000004, 759.1121875,
            755.31312500000001, 751.80312499999991, 748.36437500000011,
            744.79718749999995, 740.73640624999996, 736.60687499999995,
            732.41953125000009
        ]

        self.tma_period_10_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, 809.38290000000006, 808.3297, 806.53129999999999,
            804.16270000000009, 801.42739999999992, 798.49129999999991,
            795.24619999999993, 791.98450000000003, 788.86539999999991,
            786.22270000000003, 783.90030000000002, 782.24869999999999,
            781.26679999999999, 780.69779999999992, 780.02559999999994,
            779.43410000000006, 779.13599999999997, 779.26549999999997,
            779.72950000000003, 780.27960000000007, 780.90349999999989,
            781.27069999999992, 781.56579999999997, 782.17129999999997,
            783.70579999999995, 785.85879999999986, 788.38149999999985,
            790.80340000000001, 793.12119999999993, 795.60379999999998,
            798.46469999999999, 801.75969999999995, 805.35699999999986,
            808.81119999999999, 811.66800000000001, 813.89710000000002,
            815.62290000000007, 817.08030000000008, 818.18219999999997,
            818.73129999999992, 818.6173, 817.92340000000002,
            816.58420000000001, 814.89790000000005, 813.1776000000001,
            811.60149999999999, 810.14369999999997, 808.77209999999991,
            807.60189999999989, 806.53219999999988, 805.83849999999995,
            805.45900000000006, 805.37609999999995, 805.45009999999991,
            805.53879999999992, 805.57199999999989, 805.60550000000001,
            805.46010000000001, 805.08299999999997, 804.78279999999995,
            804.07530000000008, 803.10799999999995, 802.13229999999999,
            801.26909999999998, 800.4706000000001, 799.66729999999995,
            798.76430000000005, 798.07190000000003, 797.67060000000004,
            797.25159999999983, 797.12559999999996, 797.03829999999994,
            796.80740000000003, 796.38340000000005, 795.97239999999988,
            795.74059999999986, 795.77830000000006, 795.89409999999998,
            796.0403, 796.38080000000014, 796.86210000000005, 797.5847,
            798.53019999999992, 799.66920000000005, 800.8531999999999,
            801.86869999999999, 802.6635, 803.35490000000004,
            803.89470000000006, 804.13909999999998, 803.79090000000008,
            802.82860000000005, 801.25909999999999, 799.12969999999996,
            796.45100000000002, 793.39890000000003, 789.99340000000007,
            786.13150000000007, 781.84240000000011, 777.15330000000017,
            772.58740000000012, 768.16180000000008, 763.98310000000015,
            759.97829999999999, 756.03500000000008, 752.04859999999985,
            747.9994999999999, 743.93229999999994, 739.91300000000001
        ]
class TestUltimateOscillator(unittest.TestCase):
    def setUp(self):
        """Create data to use for testing."""
        self.close_data = SampleData().get_sample_close_data()
        self.low_data = SampleData().get_sample_close_data()

        self.buying_pressure_expected = [
            np.nan, 10.42999999999995, 1.6900000000000546, 5.3599999999999,
            0.0, 1.8799999999999955, 2.5200000000000955, 3.0, 0.0, 0.0,
            5.8099999999999454, 2.2400000000000091, 0.0, 0.0,
            1.5500000000000682, 0.0, 0.0, 0.0, 2.0400000000000773, 0.0, 0.0,
            11.549999999999955, 13.560000000000059, 0.0, 0.0, 0.0, 6.0, 0.0,
            0.0, 10.189999999999941, 0.0, 0.0, 0.0, 18.529999999999973,
            8.5399999999999636, 25.300000000000068, 6.3899999999999864, 0.0,
            0.0, 1.0900000000000318, 6.2299999999999045, 17.060000000000059,
            4.4199999999999591, 9.6599999999999682, 0.0, 4.75,
            6.4499999999999318, 7.1900000000000546, 0.0, 0.0,
            5.4600000000000364, 0.0, 0.0, 0.0, 0.0, 7.6899999999999409, 0.0,
            4.5999999999999091, 0.0, 2.3700000000000045, 0.0,
            1.5599999999999454, 0.0, 3.67999999999995, 0.0, 7.4199999999999591,
            0.67000000000007276, 0.0, 12.310000000000059, 0.99000000000000909,
            0.0, 0.0, 0.0, 2.5800000000000409, 3.2599999999999909, 0.0, 0.0,
            10.100000000000023, 0.0, 14.360000000000014, 5.1499999999999773,
            0.029999999999972715, 0.0, 0.0, 0.0, 2.0699999999999363,
            3.9000000000000909, 0.0, 0.0, 2.3000000000000682,
            2.9900000000000091, 0.36000000000001364, 2.6999999999999318,
            3.1000000000000227, 2.6699999999999591, 0.0, 4.7699999999999818,
            1.0899999999999181, 1.1500000000000909, 0.28999999999996362, 0.0,
            0.0, 1.6999999999999318, 0.0, 1.6699999999999591,
            1.2000000000000455, 0.82000000000005002, 0.0, 0.0, 0.0, 0.0, 0.0,
            1.7599999999999909, 0.0, 2.6700000000000728, 0.0, 0.0, 0.0,
            0.16999999999995907, 0.0, 3.0299999999999727, 0.0, 0.0, 0.0,
            1.7100000000000364, 0.0, 5.3600000000000136
        ]

        self.avg7_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, 0.18285945290392161,
            0.17145073700542943, 0.15453960077269807, 0.12936261959304679,
            0.10297114662662256, 0.029821386419073698, 0.022715768159960414,
            0.018412144835368464, 0.015601234192343416, 0.054152056104558616,
            0.10631216226799316, 0.10686031408666936, 0.11433023118709769,
            0.11238922209291925, 0.1528446497003047, 0.18089312710780328,
            0.12651186857253763, 0.11760860090076951, 0.13190483949812562,
            0.14903801896345339, 0.13901768847672979, 0.23107249175315753,
            0.25934433075798669, 0.34266308813058027, 0.25421822272215994,
            0.21007472024596915, 0.17943628423977778, 0.17878480105149971,
            0.1425744355491588, 0.1691657866948259, 0.11353077816492431,
            0.13277635848926303, 0.14278289278289255, 0.17248812422657755,
            0.19396190247993231, 0.19893164109567038, 0.13310650159875353,
            0.12119248217757606, 0.11282997445359086, 0.12742426670940871,
            0.10842415985467771, 0.075671472154095198, 0.034142071035517994,
            0.083709975173467344, 0.081318409498484845, 0.07646363466683169,
            0.076841315493309137, 0.10145328719723098, 0.11559690900488793,
            0.13831329410761362, 0.078944932901433493, 0.12354548214104888,
            0.089424206815510443, 0.18482538121003361, 0.17043856284362588,
            0.1774966711051926, 0.3159275780635013, 0.33100079218378725,
            0.28421472229604133, 0.24376068376068427, 0.14164047450065997,
            0.14590224182285974, 0.16077278454430941, 0.052554632194521556,
            0.043922984356197507, 0.12061138014527868, 0.12381544197607612,
            0.2472661987922315, 0.27055724751008314, 0.2460363575994024,
            0.25881942018861354, 0.25171974522293006, 0.15659560827055607,
            0.16597542242703478, 0.08320274606372656, 0.045224994346875796,
            0.049687890137328668, 0.077594295364985078, 0.1200682448283229,
            0.14544999374139592, 0.17482517482517632, 0.18074191002367831,
            0.23811129848229276, 0.22028081123244889, 0.24577777777777615,
            0.20731018910527554, 0.20986984815618095, 0.1797551918580656,
            0.14542007001166771, 0.11823777129899547, 0.1692365550958991,
            0.076839237057219192, 0.085602420359493697, 0.08254076086956369,
            0.087202718006794869, 0.076890156918687488, 0.051881798055635704,
            0.026432664756447399, 0.021497232741043142, 0.0099102193003978573,
            0.010931740180500995, 0.0066994023828555816, 0.017134016631212758,
            0.019600035395098022, 0.022937917464920292, 0.025534612945991457,
            0.029924538121259552, 0.020594633792603553, 0.045656062845142745,
            0.022322985699336825, 0.018800305504964063, 0.016608709191882141,
            0.024853209151649978, 0.023520071453381679, 0.050111634830067107
        ]

        self.avg14_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, 0.05877669935803001, 0.056880583558724981,
            0.052965424682047853, 0.068760907504363089, 0.068904116122672943,
            0.070771893727853252, 0.06805074971164933, 0.10146008919940978,
            0.1194548790076001, 0.14377757546046646, 0.13004025261989025,
            0.12887750189146424, 0.12773536028359114, 0.12790365174681664,
            0.12541313820603447, 0.15009890799144396, 0.15045174000707989,
            0.14112148176104269, 0.13315254608705171, 0.13175950691940916,
            0.13646490201261172, 0.11930393747234914, 0.10640036532314273,
            0.075790079217650699, 0.075046068241216887, 0.075420313010639409,
            0.075898947573572365, 0.075625061764996462, 0.070281945758032802,
            0.060398241804797845, 0.056576309357062357, 0.05210946737030292,
            0.054573184543134388, 0.053725452751519603, 0.045020688745651995,
            0.037538525470097041, 0.039446152726478494, 0.048612176046618223,
            0.040766157943254645, 0.061077576570533691, 0.068680374932521451,
            0.074837571187935617, 0.11290729274647651, 0.098579978875718566,
            0.10346420323325607, 0.093772230485675456, 0.098375114488279722,
            0.10420234018264843, 0.12213654316343796, 0.11665911835748806,
            0.1164306162422783, 0.14033834586466207, 0.13706124247319762,
            0.15476856383722606, 0.16265180835446427, 0.15564773452456926,
            0.11177173679855333, 0.10743050929570633, 0.10615444454417611,
            0.11122630331753533, 0.12315051399370143, 0.1158362140898796,
            0.10644467029353745, 0.11537173985818221, 0.12745403552508602,
            0.099485967880974746, 0.1114145635220955, 0.07671158480703319,
            0.070519785496477624, 0.073479389927215782, 0.0948673917191378,
            0.099919140579877497, 0.10541875753685792, 0.099403266331658607,
            0.08487538138447509, 0.08567314614830801, 0.094225047886864338,
            0.087578345181507727, 0.084882253079701306, 0.091857471887277289,
            0.086060606060605699, 0.071950534007869119, 0.053328290468986128,
            0.047190509836004375, 0.026083519957844675, 0.020242435019709067,
            0.020027996123613487, 0.017552042419481478, 0.02218256567801407,
            0.020500187883595779, 0.015863402817121765, 0.014364562694594036,
            0.010693805023827019, 0.0079791540918928722, 0.010453629999040943,
            0.010154648779578898, 0.010133878765340266, 0.010060388702829557,
            0.012295945234333899, 0.012240832481455308, 0.016931853867894968
        ]

        self.avg28_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            0.069232148696688686, 0.072185568081458706, 0.07111563776319689,
            0.067257744021141527, 0.066289554523854419, 0.066510187481011715,
            0.066532356891463904, 0.058478265151365845, 0.054542485439007048,
            0.044062503108246408, 0.041089591403223658, 0.045023910946792971,
            0.045615275813295497, 0.045404112377850032, 0.049083135881322702,
            0.041303441084462898, 0.039480629156550123, 0.034942227848644418,
            0.035436262056434659, 0.034795822512018529, 0.033684186801298227,
            0.030419416599665631, 0.031216610869720027, 0.03821326034878969,
            0.03597063519000384, 0.046608983248370692, 0.051819139453852948,
            0.053840812977340065, 0.056002976320742234, 0.052501577023339893,
            0.05479408591915725, 0.055197525027577979, 0.061227859762562814,
            0.062141168524147264, 0.064284028138425958, 0.066746195699613153,
            0.071531028986951031, 0.070121732720404006, 0.074971565777834079,
            0.072496449441125974, 0.076837254967589419, 0.078577459325012061,
            0.070610313503805103, 0.072037525652301274, 0.074757200367932528,
            0.076562423888158176, 0.078507030293948663, 0.077247334973349638,
            0.077262083300444484, 0.078989132773832404, 0.083291963152959114,
            0.07286361063950178, 0.075559984402755381, 0.055529549444119225,
            0.046953261398437175, 0.045665408244291772, 0.044225580140312956,
            0.042866483588335245, 0.043821365135752285, 0.039849780930523701,
            0.03712771267619025, 0.035948126071597065, 0.034833026704577129,
            0.030714043131261602, 0.026447151261099689, 0.024789014309496881,
            0.02392019876960871, 0.020086847876420795, 0.01682439537329122,
            0.015856047068738097, 0.012735281747817804, 0.01123423767672913,
            0.013379463377165625
        ]

        self.uo_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, 4.9480617764975188,
            7.5403136054989117, 7.2791699210180134, 6.8190173918439161,
            6.8971597940479965, 8.2824891681853536, 8.8423052914617077,
            9.8115498931716356, 6.417350321395686, 9.0781254823668345,
            6.8616962078824963, 12.949722698971353, 12.353289672183456,
            12.929513416778452, 21.980114766118298, 22.3209509653007,
            19.760970354388967, 17.107563198039031, 11.41069127193763,
            11.811563859553633, 13.157834447220168, 6.7708026013246849,
            6.2824254397009529, 11.447649609417551, 11.505069829152911,
            19.217298658453554, 20.847882088615915, 19.27545303462983,
            18.783201866747184, 18.20345109294961, 12.76407725842477,
            13.450740305296968, 9.1477124572124566, 6.7816224870201376,
            6.7989275610687931, 8.6838122410845422, 11.524458276434498,
            12.155623477827673, 14.24430560175329, 13.555532273570078,
            16.718885998424511, 15.809421201560561, 17.763660115045507,
            15.73023661761655, 16.07248725809103, 14.205567485481968,
            11.856258187279566, 10.307781606656395, 13.466548563682421,
            8.0214681623674942, 8.5066592964333783, 8.3820228270330155,
            8.5213152650163746, 7.2427320733515348, 5.1591004936993183,
            3.5111012420298584, 2.6054507288596414, 1.7570318689906403,
            1.8229188300711889, 1.4535925042986997, 2.1432701508152774,
            2.2192663345597241, 2.2615928885500258, 2.3083088614916503,
            2.3933273399113135, 1.7589408237670978, 3.2493101449751656,
            1.8526869747560841, 1.6041910703404001, 1.463023732027511,
            1.9534286974726502, 1.8542312636166636, 3.538424434760342
        ]

    def test_buying_pressure(self):
        bp = ultimate_oscillator.buying_pressure(self.close_data,
                                                 self.low_data)
        np.testing.assert_array_equal(bp, self.buying_pressure_expected)

    def test_average_7(self):
        avg7 = ultimate_oscillator.average_7(self.close_data, self.low_data)
        np.testing.assert_array_equal(avg7, self.avg7_expected)

    def test_average_14(self):
        avg14 = ultimate_oscillator.average_14(self.close_data, self.low_data)
        np.testing.assert_array_equal(avg14, self.avg14_expected)

    def test_average_28(self):
        avg28 = ultimate_oscillator.average_28(self.close_data, self.low_data)
        np.testing.assert_array_equal(avg28, self.avg28_expected)

    def test_ultimate_oscillator(self):
        uo = ultimate_oscillator.ultimate_oscillator(self.close_data,
                                                     self.low_data)
        np.testing.assert_array_equal(uo, self.uo_expected)

    def test_uo_invalid_data(self):
        self.close_data.append(0)
        with self.assertRaises(Exception) as cm:
            ultimate_oscillator.ultimate_oscillator(self.close_data,
                                                    self.low_data)
        expected = "Error: mismatched data lengths, check to ensure that all input data is the same length and valid"
        self.assertEqual(str(cm.exception), expected)
class TestVolumeAdjustedMovingAverage(unittest.TestCase):
    def setUp(self):
        """Create data to use for testing."""
        self.data = SampleData().get_sample_close_data()
        self.volume = SampleData().get_sample_volume()

        self.vama_period_6_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, 1478.9191875054275,
            1485.927186808339, 1481.5016007215124, 1366.7993111951894,
            1138.8694586412714, 1104.5954746648379, 946.13218234680642,
            922.69615745159228, 860.19234823594797, 851.01270826797952,
            814.52285941994569, 809.25274879392748, 784.37148213332409,
            767.63455656795804, 811.03606148752976, 843.21832305088628,
            837.16612745364034, 870.76143285494197, 915.14630307187133,
            912.57722758238197, 853.85373491494772, 866.79378217966894,
            867.49811110979647, 866.11607176770769, 863.5489849618649,
            871.46180722287988, 887.95647051455398, 852.32426551175479,
            883.44731862017727, 919.04705742390377, 921.41424015751136,
            954.54602411468341, 991.66033186814582, 1115.2830631048744,
            1198.0811152077529, 1410.0360135410599, 1688.4865741012773,
            1917.1424186877423, 1918.215991981376, 1863.7584773034105,
            1927.1044736459551, 1683.7393249812376, 1377.4150362863936,
            1092.0562540338792, 1066.3837072149215, 1021.3411547574237,
            890.20747328187588, 888.356659646195, 898.26650178239595,
            939.43758775767458, 1004.7245110554386, 1007.3387471873044,
            1025.2579322831325, 1097.1247314592636, 1159.1093366126613,
            1117.9856657734301, 1022.656119613738, 978.87751023106409,
            889.88464891293279, 794.88497827399135, 764.4152968456541,
            790.89402217758141, 796.51098752736198, 988.95246020718866,
            1108.2127792905665, 1185.9608029702306, 1260.7753536472812,
            1298.8107370130183, 1371.5779119720773, 1252.6776082892834,
            1275.7345100594448, 1264.0660910988249, 1213.205355799653,
            1221.8284473877932, 1334.4140503461745, 1413.5084939839417,
            1364.267853677329, 1462.8134739920863, 1338.5495082201121,
            1292.7409830621648, 1120.3240028607488, 1042.070664276355,
            1066.6367277768802, 945.90523804624581, 1081.45407292,
            1269.747257474032, 1533.9443831606586, 1760.6716632526666,
            2237.3265316109864, 2421.8750893134115, 2420.4617394966749,
            2314.0598765661589, 2119.8674343893481, 1959.3815471892437,
            1550.0654801862522, 1464.6625306458172, 1520.5901717759809,
            1795.2756210211048, 1907.5933571913313, 1860.944723016886,
            1805.126768052927, 1698.1865657801293, 1622.2922744439393,
            1270.0950505698008, 1093.3852208107576, 1136.6440474786677,
            1034.0660867815934, 988.69422130572536, 953.29818762303705,
            898.57477175906968, 920.74196327817174, 833.27760880848825,
            841.336106693754, 836.30404073311945, 815.09746179658714,
            848.88045047538014, 818.06047207122549, 827.3865324195159,
            841.57797918328015, 875.12940427704518, 886.40358446891844,
            904.25282780430268
        ]

        self.vama_period_8_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            1408.8543552519286, 1375.7604268867276, 1324.5505796637972,
            1235.1339565915534, 1050.6618869955378, 1049.1192141116881,
            944.80922579981882, 899.57456798145813, 824.31652368762207,
            816.97403479060688, 784.78840461457708, 796.39852553902801,
            843.48713515536122, 839.96619218092849, 807.04685810089143,
            831.78557823082872, 860.25598735352139, 873.89188463036885,
            895.59882474157894, 914.33561138971174, 849.39339531759163,
            848.95888976844481, 880.04313048468998, 874.4171654063224,
            875.20645032359084, 869.14588983674128, 871.58858309651373,
            888.1488462016207, 920.48022727047601, 940.73962966655426,
            971.28996050330147, 1052.0118317482372, 1104.1820666164131,
            1306.4326572235996, 1524.259668881301, 1689.3111506144332,
            1718.8912743712001, 1733.9211716397826, 1805.76517294977,
            1732.7748536308718, 1658.7601096902813, 1450.8263309840481,
            1252.3141242064335, 1062.0702236920436, 1034.7587839251446,
            1001.2234903879599, 887.13163079261199, 892.6000280663759,
            972.79623028321737, 998.53209355711249, 1003.9144527263028,
            1058.0611729143397, 1088.808028290701, 1064.8217826618022,
            1066.0884436567239, 1028.1120354121547, 917.78455611942354,
            898.72084622935495, 893.17605171259197, 835.14875070054063,
            794.1396818427495, 931.3371312374735, 981.95205087704494,
            1054.0333157837299, 1171.3440802633534, 1213.0930697548106,
            1249.511643187567, 1277.6748208212503, 1341.3696927761073,
            1260.3685389524574, 1250.0885126451683, 1239.9938030679825,
            1304.7406657117369, 1363.6981385494425, 1335.8871490550457,
            1417.9704382295595, 1297.1997612656689, 1261.4999720404876,
            1235.0796510075586, 1228.8798012158638, 1135.0541571280751,
            1067.2679962762875, 1085.0894256976721, 1116.7003096519468,
            1381.6258072129685, 1579.8278113587401, 1972.8060536907533,
            2102.1213150540802, 2100.4581844875179, 2142.8162885418819,
            2160.4358283149795, 2097.0535286451486, 1984.8968764599485,
            1880.1144655989433, 1562.9059146112641, 1672.8666873226514,
            1775.7845415859722, 1757.2171634831939, 1748.8413767076324,
            1684.2182295421076, 1617.0760103045293, 1526.9410772656393,
            1455.3808283620544, 1263.2434833263662, 1093.695923900329,
            1030.030353258737, 978.20457498211192, 927.23223174984457,
            929.21809498772882, 935.63040200538171, 904.6590883125765,
            804.77534819957566, 813.97810624335727, 822.37190362708566,
            827.78980832387003, 882.23922250071632, 845.28610024140767,
            836.16419480099341, 847.77871457473054, 873.33349393047308
        ]

        self.vama_period_10_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, 1297.8229874996732, 1268.6359200655111, 1216.8482981427048,
            1164.6452517636903, 1028.6975808282014, 1005.3373312035613,
            899.18519064838404, 862.63125725686439, 798.57022698979188,
            805.1463989873514, 831.9975425359562, 848.51104023519042,
            833.80555771248441, 831.47042249887397, 831.54259989134607,
            842.08511057599299, 855.59606783295749, 883.0356602666352,
            883.6815350983677, 890.55933161872395, 863.05035397594725,
            859.03120107918915, 886.0702736695057, 871.97335986072301,
            864.66214442735122, 894.44122952363671, 903.58665712148536,
            911.68254624019778, 960.56760612451512, 1021.473554663023,
            1065.381422574884, 1217.5857533145449, 1383.9047192735197,
            1550.5734381457903, 1581.4288101412344, 1588.3004065907273,
            1668.7955626679504, 1655.1017338344773, 1615.357541924468,
            1536.6373527031933, 1502.4103653455356, 1355.0834913205458,
            1189.8281021763094, 1037.8302784095483, 1003.3878478050798,
            982.0448189757517, 948.98238779122585, 949.2431446441858,
            978.53383977435317, 1040.8713648647793, 1059.0232254437237,
            1040.0315255853552, 1028.4515755903431, 1003.5556549951074,
            973.50472805267532, 954.13979917456948, 914.83769691785278,
            910.16469057952168, 891.20340873688076, 938.65229224386235,
            942.96679365941839, 994.92488149264955, 1057.7092373379787,
            1102.1246266486942, 1180.2193665723676, 1213.3278702530376,
            1249.758321587693, 1278.8281228453959, 1307.7258583013536,
            1241.850218957057, 1315.9401292057323, 1349.8564848612643,
            1311.8538216057216, 1377.2297650328367, 1287.9088160501744,
            1265.8882438207859, 1222.6938248865147, 1216.6592287677822,
            1223.9126447920576, 1211.6758394279082, 1136.1328295944695,
            1179.6315019148399, 1324.4997425765125, 1395.3741423241304,
            1763.1788588265822, 1889.1563031786561, 1916.215471576025,
            1942.8250292887228, 1956.4381665439935, 2003.4599278099292,
            2044.3457031863334, 2006.1054670817273, 1908.2029447452187,
            1963.5874039497855, 1758.5982618922003, 1666.9017080320132,
            1675.1447203200848, 1636.5814806101096, 1609.6578487779732,
            1550.0155059781198, 1484.5901062669034, 1470.0906181317237,
            1383.2302693234524, 1152.632640780882, 1037.0807470369969,
            972.59353522343008, 953.95922340205038, 951.14524394873911,
            914.6565686733411, 892.35803487887301, 870.10809162849478,
            799.9353770214575, 824.35585457582965, 854.3606306170135,
            847.62444360948689, 878.29081438965818, 849.50506434294255,
            842.52050841894618
        ]

    def test_vama_period_6(self):
        period = 6
        vama = volume_adjusted_moving_average.volume_adjusted_moving_average(
            self.data, self.volume, period)
        np.testing.assert_array_equal(vama, self.vama_period_6_expected)

    def test_vama_period_8(self):
        period = 8
        vama = volume_adjusted_moving_average.volume_adjusted_moving_average(
            self.data, self.volume, period)
        np.testing.assert_array_equal(vama, self.vama_period_8_expected)

    def test_vama_period_10(self):
        period = 10
        vama = volume_adjusted_moving_average.volume_adjusted_moving_average(
            self.data, self.volume, period)
        np.testing.assert_array_equal(vama, self.vama_period_10_expected)

    def test_vama_invalid_data(self):
        self.data.append(1)
        period = 6
        with self.assertRaises(Exception) as cm:
            volume_adjusted_moving_average.volume_adjusted_moving_average(
                self.data, self.volume, period)
        expected = (
            "Error: mismatched data lengths, check to ensure that all input data is the same length and valid"
        )
        self.assertEqual(str(cm.exception), expected)

    def test_vama_invalid_period(self):
        period = 128
        with self.assertRaises(Exception) as cm:
            volume_adjusted_moving_average.volume_adjusted_moving_average(
                self.data, self.volume, period)
        expected = "Error: data_len < period"
        self.assertEqual(str(cm.exception), expected)
Exemple #24
0
class TestTypicalPrice(unittest.TestCase):
    def setUp(self):
        """Create data to use for testing."""
        self.close_data = SampleData().get_sample_close_data()
        self.high_data = SampleData().get_sample_high_data()
        self.low_data = SampleData().get_sample_low_data()

        self.tp_expected = [
            792.42999999999995, 802.86666666666667, 804.61333333333334,
            809.96999999999991, 807.61666666666667, 809.68999999999994,
            812.28666666666652, 815.05666666666673, 812.59666666666669,
            809.88666666666677, 815.84666666666669, 817.94666666666672,
            815.52333333333343, 807.71999999999991, 809.66666666666663,
            795.22666666666657, 791.40333333333331, 776.2733333333332,
            778.42000000000007, 764.65999999999997, 764.31333333333339,
            776.02333333333343, 789.42000000000007, 785.71000000000004,
            780.31666666666661, 779.13000000000011, 784.9133333333333,
            784.84666666666669, 775.96999999999991, 786.21999999999991,
            780.14333333333343, 775.19999999999993, 753.2266666666668,
            771.70333333333338, 780.18666666666661, 805.73000000000002,
            811.87333333333333, 801.88666666666666, 781.03000000000009,
            782.09666666666669, 788.48000000000002, 805.62333333333333,
            809.75666666666666, 819.56333333333339, 817.06333333333339,
            822.00666666666666, 828.43666666666661, 835.50333333333344,
            824.03666666666652, 821.82333333333338, 827.11333333333334,
            821.61999999999989, 806.84666666666669, 804.60666666666668,
            803.99666666666656, 811.95666666666659, 809.61333333333334,
            813.90333333333331, 800.75999999999988, 803.03666666666675,
            801.40333333333331, 802.7166666666667, 800.14666666666665,
            803.9666666666667, 802.64666666666665, 810.02666666666664,
            810.48333333333323, 802.69333333333327, 815.21000000000004, 816.0,
            805.07666666666671, 799.78666666666652, 795.49666666666656,
            797.88999999999999, 801.10666666666657, 790.60333333333335,
            788.78000000000009, 798.62, 788.29333333333341, 802.70666666666659,
            807.78666666666652, 808.00999999999988, 796.85333333333335,
            791.17666666666673, 789.77666666666664, 791.77666666666664,
            795.82333333333338, 793.09333333333325, 791.31333333333316,
            793.57333333333327, 796.26999999999998, 796.90999999999997,
            799.42999999999995, 802.87, 805.45666666666659, 801.36333333333334,
            805.80666666666673, 806.89999999999998, 808.01666666666677,
            808.6633333333333, 807.36000000000001, 805.23666666666668,
            806.80333333333328, 797.16666666666663, 798.88, 800.11000000000001,
            800.88000000000011, 791.46333333333325, 765.80333333333328,
            761.89999999999998, 757.54333333333341, 757.55666666666673,
            759.20666666666659, 754.46333333333325, 756.90333333333331, 753.5,
            753.0866666666667, 735.65999999999997, 735.94666666666672,
            729.61000000000001, 732.53000000000009, 727.24666666666656,
            717.77666666666664, 707.38666666666666, 709.04333333333341,
            704.95666666666659, 710.37666666666667
        ]

    def test_typical_price(self):
        tp = typical_price.typical_price(self.close_data, self.high_data,
                                         self.low_data)
        np.testing.assert_array_equal(tp, self.tp_expected)

    def test_typical_price_invalid_data(self):
        self.close_data.append(1)
        with self.assertRaises(Exception) as cm:
            typical_price.typical_price(self.close_data, self.high_data,
                                        self.low_data)
        expected = (
            "Error: mismatched data lengths, check to ensure that all input data is the same length and valid"
        )
        self.assertEqual(str(cm.exception), expected)
Exemple #25
0
    def setUp(self):
        """Create data to use for testing."""
        self.data = SampleData().get_sample_close_data()

        self.sma_period_6_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, 804.55166666666673,
            807.84333333333336, 809.89666666666665, 811.21833333333325,
            811.20333333333338, 812.51166666666666, 813.88000000000011,
            814.40333333333331, 813.18666666666661, 812.6783333333334,
            810.23333333333346, 806.20333333333338, 799.25166666666667,
            793.06499999999994, 785.82499999999993, 778.30499999999995,
            775.09000000000003, 774.75166666666667, 776.35333333333347,
            776.68333333333339, 779.10666666666668, 782.55166666666673,
            784.03833333333341, 781.79333333333341, 781.85500000000002,
            781.81833333333327, 781.17833333333328, 775.88166666666666,
            773.70666666666659, 774.42666666666662, 777.66499999999996,
            782.99833333333333, 787.4766666666668, 792.12333333333345,
            793.86333333333334, 795.21833333333336, 795.20000000000016,
            794.85333333333335, 797.77499999999998, 803.81666666666672,
            810.46833333333336, 817.15666666666664, 822.19999999999993,
            824.55999999999983, 824.90499999999986, 826.52833333333331,
            826.42666666666662, 822.80833333333339, 817.61833333333345,
            814.28833333333341, 812.64499999999998, 809.72499999999991,
            808.505, 807.48333333333323, 807.23000000000002,
            806.75500000000011, 805.25833333333321, 803.72666666666657,
            802.04166666666663, 802.36333333333334, 803.52666666666664,
            805.11000000000001, 805.08666666666659, 807.51666666666677,
            809.49833333333333, 809.89666666666665, 808.18333333333328,
            805.62666666666667, 804.84666666666669, 802.55833333333339,
            798.31000000000006, 795.5916666666667, 795.43166666666673,
            794.28000000000009, 795.0916666666667, 796.21833333333336,
            799.1450000000001, 800.50333333333344, 799.26666666666677, 799.495,
            797.67500000000007, 795.64666666666665, 793.17999999999995,
            792.25166666666667, 792.61833333333345, 793.74166666666667,
            794.58000000000004, 795.21833333333325, 796.80666666666673,
            799.15999999999997, 800.42500000000007, 801.98666666666668,
            803.67000000000007, 805.09499999999991, 806.05166666666662,
            806.39499999999987, 807.06833333333327, 807.23000000000002,
            805.59666666666669, 804.04999999999984, 802.65500000000009,
            801.56499999999994, 799.25, 792.40166666666664, 786.52166666666665,
            779.64333333333332, 772.54333333333341, 765.60000000000002,
            759.44500000000005, 757.98500000000001, 756.55833333333328,
            755.81666666666661, 752.16833333333341, 748.25500000000011,
            744.10000000000002, 740.005, 735.63666666666666,
            729.73333333333323, 725.005, 720.53333333333342,
            716.43500000000006, 712.72500000000002
        ]

        self.sma_period_8_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, 806.83875,
            809.34500000000003, 810.21500000000003, 811.60000000000002,
            812.59500000000003, 813.53750000000002, 813.31500000000005,
            812.97125000000005, 810.46749999999997, 807.83875,
            803.63124999999991, 798.95249999999999, 792.27374999999995,
            785.89750000000004, 781.89499999999998, 779.39374999999995,
            778.22125000000005, 776.8125, 777.16500000000008,
            778.01250000000005, 780.55500000000006, 782.00999999999999,
            783.29500000000007, 782.11249999999995, 780.78375000000005,
            777.41125, 776.505, 775.91624999999999, 778.5150000000001,
            783.01625000000001, 785.0, 785.1400000000001, 786.01875000000007,
            790.41875000000005, 794.63499999999999, 798.33625000000006,
            800.08249999999998, 800.75375000000008, 803.26250000000005,
            809.19375000000002, 815.88750000000005, 820.34249999999997,
            822.36124999999993, 824.50999999999999, 824.75125000000003,
            823.4375, 821.25, 818.19125000000008, 815.19499999999994,
            813.38375000000008, 812.45125000000007, 809.15375000000006,
            806.85249999999996, 806.15125000000012, 805.92499999999995,
            805.46250000000009, 804.49874999999997, 803.63249999999994,
            803.11874999999998, 804.37124999999992, 804.3175,
            806.03375000000005, 807.67875000000004, 808.25999999999999,
            807.72500000000002, 806.81875000000002, 805.3075, 804.12,
            802.59625000000005, 799.31625000000008, 797.17499999999995,
            795.10625000000005, 795.48874999999998, 797.06375000000003,
            798.31999999999994, 797.77500000000009, 797.89249999999993,
            798.03375000000005, 797.17124999999999, 798.08874999999989,
            796.88625000000002, 794.79999999999995, 792.99749999999995,
            792.96249999999998, 793.65625, 794.88125000000002,
            796.23500000000001, 797.43499999999995, 798.43125000000009,
            800.26375000000007, 801.94499999999994, 803.39625000000001,
            804.83875, 805.81750000000011, 806.12750000000005,
            806.31625000000008, 805.82375000000002, 804.94375000000002,
            804.07749999999999, 803.17000000000007, 801.02625,
            795.82124999999996, 790.41374999999994, 784.25375000000008,
            779.28750000000002, 774.33249999999998, 768.61875000000009,
            763.13625000000002, 758.39499999999998, 756.81500000000005,
            753.52250000000004, 750.79124999999999, 747.28625,
            743.94000000000005, 740.53874999999994, 735.62625000000003,
            729.85749999999996, 724.32875000000001, 720.48624999999993,
            717.29250000000002
        ]

        self.sma_perio_10_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, 807.70500000000004, 810.02499999999998, 811.52600000000007,
            812.60300000000007, 812.39999999999998, 812.56499999999994,
            811.11400000000003, 809.04100000000005, 805.13900000000001,
            801.71100000000001, 797.173, 792.04099999999994,
            787.83999999999992, 785.25, 783.03899999999999, 780.11399999999992,
            778.49700000000007, 777.85000000000002, 778.7120000000001,
            778.48700000000008, 780.65700000000004, 782.22199999999998,
            782.14999999999998, 778.52800000000002, 777.12400000000002,
            777.13300000000004, 779.79200000000003, 782.49000000000001,
            784.21299999999997, 784.726, 784.32900000000006,
            785.17300000000012, 788.20500000000015, 793.87299999999993,
            798.65399999999988, 802.36000000000001, 804.01100000000008,
            805.66800000000012, 809.03899999999999, 813.33500000000004,
            817.279, 821.14599999999996, 822.74699999999996,
            822.44100000000003, 820.94500000000005, 819.61800000000005,
            818.58500000000004, 816.68700000000013, 814.52999999999997,
            812.19500000000005, 810.34000000000003, 807.75400000000013,
            805.8839999999999, 805.23800000000006, 805.18399999999997,
            805.04000000000008, 804.86900000000003, 804.9849999999999,
            803.83299999999997, 805.25799999999992, 806.54499999999996,
            806.92499999999995, 806.62400000000002, 806.125,
            805.51600000000008, 805.375, 803.41500000000008,
            801.21400000000006, 800.83100000000002, 798.18299999999999,
            796.87199999999996, 797.16800000000001, 797.99199999999996,
            798.1400000000001, 797.48299999999995, 796.34500000000003,
            796.49099999999999, 797.20100000000002, 796.64099999999996,
            796.923, 795.99900000000002, 794.85900000000004,
            793.75199999999995, 794.02999999999997, 795.16499999999996,
            796.72199999999998, 797.649, 798.66300000000001,
            800.04600000000005, 801.7360000000001, 803.22499999999991,
            804.31399999999996, 805.14200000000005, 805.87000000000012,
            805.32000000000005, 804.67000000000007, 804.56299999999999,
            804.06100000000004, 802.49000000000001, 798.25400000000013,
            793.60200000000009, 788.61899999999991, 783.84799999999996,
            779.08300000000008, 774.79899999999998, 770.61500000000001,
            765.94400000000007, 761.16999999999996, 755.59899999999993,
            752.59500000000003, 749.34600000000012, 746.83199999999999,
            743.79999999999995, 739.64999999999998, 734.93499999999995,
            730.12400000000002, 725.27200000000005, 720.97700000000009
        ]
Exemple #26
0
    def setUp(self):
        """Create data to use for testing."""
        self.data = SampleData().get_sample_close_data()

        self.momentum_period_6_expected = [np.nan, np.nan, np.nan, np.nan,
        np.nan, 17.229999999999905, 9.32000000000005, 10.629999999999995,
        2.57000000000005, 2.0400000000000773, 5.9700000000000273,
        5.6899999999999409, 0.13999999999998636, -4.6000000000000227,
        -0.38999999999998636, -20.480000000000018, -26.419999999999959,
        -39.160000000000082, -29.67999999999995, -44.990000000000009,
        -30.839999999999918, -15.590000000000032, 13.260000000000105,
        7.5699999999999363, 15.740000000000009, 14.669999999999959,
        9.1200000000000045, -4.6400000000001, -9.8199999999999363,
        5.9599999999999227, 0.98000000000001819, -9.8400000000000318,
        -31.579999999999927, -4.2200000000000273, -5.8700000000000045,
        25.610000000000014, 36.82000000000005, 48.809999999999945,
        9.3500000000000227, 1.9000000000000909, -17.170000000000073, -6.5,
        7.8700000000000045, 38.459999999999923, 35.159999999999968,
        33.680000000000064, 23.069999999999936, 25.840000000000032, 4.5,
        4.2799999999999727, 4.9900000000000091, -7.0599999999999454,
        -28.899999999999977, -19.459999999999923, -17.549999999999955,
        -15.32000000000005, -11.919999999999959, 7.3299999999999272,
        -3.8899999999999864, -1.0, -10.539999999999964, -6.7800000000000864,
        -13.789999999999964, 3.3499999999999091, -0.44000000000005457,
        8.8299999999999272, 7.9400000000000546, 2.2699999999999818,
        10.900000000000091, 13.310000000000059, -5.0299999999999727,
        -10.950000000000045, -7.2599999999999909, -16.990000000000009,
        -14.720000000000027, -14.569999999999936, -11.059999999999945,
        3.4300000000000637, -9.4900000000000091, 1.6100000000000136,
        17.529999999999973, 19.299999999999955, -1.9500000000000455,
        2.9199999999999591, -12.990000000000009, -16.07000000000005,
        -12.199999999999932, -3.6499999999999773, -0.10000000000002274, 3.75,
        4.6700000000000728, 1.1299999999999955, 6.42999999999995,
        11.450000000000045, 11.819999999999936, 4.6000000000000227,
        9.0099999999999909, 7.3999999999999773, 5.4500000000000455,
        3.07000000000005, 6.2899999999999636, -0.73000000000001819,
        -0.12000000000000455, -10.950000000000045, -9.57000000000005,
        -7.3600000000000136, -4.2899999999999636, -15.589999999999918,
        -31.409999999999968, -36.949999999999932, -42.470000000000027,
        -43.420000000000073, -32.060000000000059, -11.430000000000064,
        -4.8899999999999864, -4.2400000000000091, -4.3199999999999363,
        -23.649999999999977, -18.610000000000014, -27.600000000000023,
        -20.899999999999977, -26.0, -17.850000000000023, -28.539999999999964,
        -20.509999999999991, -27.620000000000005, -16.950000000000045]

        self.momentum_period_8_expected = [np.nan, np.nan, np.nan, np.nan,
        np.nan, np.nan, np.nan, 22.75, 9.6200000000000045, 5.2699999999999818,
        5.7200000000000273, 10.090000000000032, 5.6600000000000819,
        -4.3000000000000682, -5.75, -17.330000000000041, -18.370000000000005,
        -39.470000000000027, -39.669999999999959, -50.879999999999995,
        -43.569999999999936, -33.57000000000005, -5.7299999999999045,
        -5.6800000000000637, 4.0200000000000955, 0.77999999999997272,
        20.539999999999964, 20.469999999999914, 0.090000000000031832,
        -3.2800000000000864, -5.8099999999999454, -5.0400000000000773,
        -25.779999999999973, -13.25, -4.5099999999999909, 29.620000000000005,
        25.82000000000005, 22.049999999999955, 5.9400000000000546,
        28.970000000000027, 16.669999999999959, 25.190000000000055,
        4.3099999999999454, 7.5799999999999272, 15.32000000000005, 41.0,
        46.3599999999999, 47.32000000000005, 18.579999999999927,
        11.730000000000018, 7.5300000000000864, 4.1399999999999864,
        -15.259999999999991, -23.949999999999932, -31.659999999999968,
        -12.289999999999964, -12.059999999999945, -12.920000000000073,
        -20.779999999999973, -3.7599999999999909, -3.3700000000000045,
        -1.2900000000000773, -11.389999999999986, -5.5100000000001046,
        -11.529999999999973, 9.3499999999999091, 7.6499999999999773,
        1.4199999999999591, 12.170000000000073, 15.57000000000005,
        0.97000000000002728, -2.8600000000000136, -14.669999999999959,
        -12.759999999999991, -1.4199999999999591, -24.5, -27.230000000000018,
        -6.2099999999999227, -11.299999999999955, 7.4500000000000455,
        10.019999999999982, 6.7899999999999636, 6.4099999999999682,
        2.67999999999995, -8.9700000000000273, 3.4399999999999409,
        -7.0199999999999818, -14.769999999999982, -16.720000000000027,
        -3.2699999999999818, 5.1900000000000546, 7.1000000000000227,
        7.7300000000000182, 6.92999999999995, 12.199999999999932,
        9.8900000000001, 12.360000000000014, 10.459999999999923, 11.25,
        8.8400000000000318, 4.7300000000000182, -0.18999999999994088,
        5.7399999999998954, -8.7100000000000364, -8.1299999999999955,
        -8.0800000000000409, -7.5499999999999545, -16.139999999999986,
        -39.389999999999986, -44.959999999999923, -39.600000000000023,
        -41.399999999999977, -40.840000000000032, -46.530000000000086,
        -34.259999999999991, -12.430000000000064, -8.7699999999999818,
        -22.019999999999982, -21.720000000000027, -29.799999999999955,
        -21.899999999999977, -29.879999999999995, -35.629999999999995,
        -45.940000000000055, -26.659999999999968, -30.909999999999968,
        -19.230000000000018]

        self.momentum_period_10_expected = [np.nan, np.nan, np.nan, np.nan,
        np.nan, np.nan, np.nan, np.nan, np.nan, 17.389999999999986,
        12.769999999999982, 13.319999999999936, 5.4100000000000819,
        0.10000000000002274, -0.2299999999999045, -17.030000000000086,
        -23.730000000000018, -36.32000000000005, -31.620000000000005,
        -51.189999999999941, -53.559999999999945, -39.460000000000036,
        -18.459999999999923, -23.660000000000082, -14.969999999999914,
        -12.470000000000027, 8.82000000000005, 6.5799999999999272,
        11.509999999999991, 21.829999999999927, 4.1000000000000227,
        -14.280000000000086, -32.569999999999936, -8.4500000000000455,
        1.2899999999999636, 20.590000000000032, 27.180000000000064,
        26.059999999999945, -5.0599999999999454, 2.2100000000000364,
        13.259999999999991, 52.259999999999991, 38.149999999999977,
        39.269999999999982, 11.759999999999991, 10.120000000000005,
        26.519999999999982, 54.639999999999986, 41.869999999999891,
        33.210000000000036, 21.610000000000014, 11.590000000000032,
        -12.719999999999914, -12.75, -18.019999999999982, -16.779999999999973,
        -26.169999999999959, -9.8899999999999864, -20.919999999999959,
        -24.009999999999991, -20.259999999999991, -4.0500000000000682,
        -4.2200000000000273, -0.020000000000095497, -9.1299999999999955,
        0.48999999999989541, -3.4399999999999409, 1.9399999999999409,
        11.879999999999995, 14.720000000000027, 2.2400000000000091,
        -0.60000000000002274, -8.6699999999999591, -4.6699999999999591,
        -8.8299999999999272, -20.269999999999982, -13.92999999999995,
        -16.139999999999986, -27.470000000000027, -2.1899999999999409,
        8.2100000000000364, 12.629999999999995, -1.1000000000000227,
        -9.8300000000000409, -0.61000000000001364, 3.1999999999999318, -3.0,
        4.7400000000000091, -11.540000000000077, -14.389999999999986,
        -11.42999999999995, 0.080000000000040927, 8.25, 12.899999999999977,
        13.5, 5.3700000000000045, 12.740000000000009, 15.75, 14.600000000000023,
        11.899999999999977, 10.529999999999973, 5.5800000000000409,
        4.17999999999995, -8.1699999999999591, -2.2700000000000955,
        -5.8400000000000318, -6.1099999999999, -16.860000000000014,
        -42.649999999999977, -45.509999999999991, -47.580000000000041,
        -49.409999999999968, -37.970000000000027, -44.509999999999991,
        -43.039999999999964, -47.530000000000086, -38.139999999999986,
        -30.210000000000036, -26.170000000000073, -28.169999999999959,
        -25.009999999999991, -32.079999999999927, -36.629999999999995,
        -49.82000000000005, -44.439999999999941, -48.310000000000059,
        -25.379999999999995]
Exemple #27
0
    def setUp(self):
        """Create data to use for testing."""
        self.close_data = SampleData().get_sample_close_data()
        self.high_data = SampleData().get_sample_high_data()
        self.low_data = SampleData().get_sample_low_data()

        self.bandwidth_period_6_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, 5.1283333333333303,
            5.0749999999999886, 5.0266666666666424, 4.8866666666666374,
            4.6966666666666397, 4.7299999999999613, 4.8099999999999836,
            4.9249999999999732, 4.923333333333308, 5.0466666666666429,
            5.0983333333333194, 5.1333333333333071, 5.0649999999999791,
            5.0033333333333303, 5.0066666666666606, 4.97999999999998,
            4.896666666666647, 4.8466666666666542, 4.7666666666666515,
            4.7216666666666542, 4.7866666666666715, 4.7116666666666829,
            4.7933333333333508, 4.8833333333333639, 4.9833333333333671,
            4.9600000000000177, 5.035000000000025, 5.1116666666666974,
            5.0950000000000273, 4.9233333333333462, 4.8866666666666561,
            4.9416666666666629, 4.8833333333333258, 5.0049999999999955,
            4.9116666666666715, 4.8900000000000245, 5.0016666666667033,
            5.0633333333333894, 5.0066666666667174, 4.8750000000000382,
            4.951666666666692, 5.0483333333333462, 4.9983333333333348,
            4.8749999999999813, 4.97999999999998, 4.911666666666652,
            4.8599999999999755, 4.9433333333333094, 4.8849999999999909,
            5.0550000000000068, 5.0083333333333444, 5.0083333333333444,
            5.0800000000000223, 4.9916666666666929, 5.1733333333333462,
            5.0316666666666761, 5.1183333333333394, 5.2166666666666783,
            5.1499999999999959, 5.1949999999999932, 5.1199999999999859,
            5.1766666666666383, 5.0549999999999686, 5.0366666666666333,
            5.121666666666651, 5.0049999999999768, 4.9749999999999845,
            4.9049999999999914, 4.8300000000000027, 4.8733333333333348,
            4.9366666666666674, 5.0666666666666815, 5.0566666666666906,
            5.0700000000000118, 5.1900000000000164, 5.1633333333333553,
            5.1333333333333639, 4.9150000000000205, 4.8666666666666929,
            5.0300000000000482, 4.9583333333333712, 4.89500000000002,
            4.9300000000000068, 5.0383333333333367, 5.0099999999999909,
            4.8933333333333167, 4.8449999999999891, 4.9500000000000073,
            4.9500000000000073, 5.071666666666677, 5.128333333333349,
            5.071666666666677, 5.1133333333333253, 5.0549999999999882,
            4.9216666666666429, 4.8266666666666538, 4.859999999999995,
            4.8533333333333148, 4.9033333333333262, 4.9049999999999914,
            4.8633333333333253, 4.8999999999999773, 4.82499999999997,
            4.8933333333333167, 4.8066666666666533, 4.8666666666666556,
            4.9733333333333194, 4.8233333333333235, 4.7783333333333262,
            4.7883333333333367, 4.9250000000000114, 4.9550000000000027,
            5.0516666666666952, 5.1850000000000405, 5.3100000000000209,
            5.2783333333333458, 5.2333333333333298, 5.041666666666667,
            4.9633333333333285, 5.036666666666652, 4.9716666666666542,
            5.0449999999999973
        ]

        self.center_band_period_6_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, 804.53111111111104,
            807.84055555555551, 809.87222222222215, 811.20277777777767,
            811.18888888888887, 812.56055555555565, 813.93666666666684,
            814.47611111111109, 813.25333333333344, 812.76499999999999,
            810.32166666666672, 806.24777777777774, 799.3022222222221,
            793.11833333333323, 785.94166666666661, 778.38277777777773,
            775.18222222222221, 774.8516666666668, 776.42444444444448,
            776.7405555555556, 779.15222222222235, 782.58555555555552,
            784.05611111111114, 781.81444444444458, 781.89944444444438,
            781.8705555555556, 781.21555555555551, 775.93444444444447,
            773.74388888888882, 774.44666666666672, 777.69833333333338,
            782.98666666666668, 787.43444444444447, 792.06833333333327,
            793.80055555555555, 795.18277777777791, 795.16499999999996,
            794.8122222222222, 797.75833333333333, 803.76388888888903,
            810.41555555555567, 817.07500000000016, 822.05499999999995,
            824.43499999999995, 824.81166666666684, 826.48666666666668,
            826.4222222222221, 822.82388888888875, 817.67444444444436,
            814.33444444444433, 812.68999999999994, 809.7733333333332,
            808.48722222222216, 807.47277777777765, 807.21111111111111,
            806.7788888888889, 805.23888888888894, 803.66111111111104, 802.005,
            802.31944444444446, 803.48444444444431, 804.99777777777774,
            804.99388888888882, 807.5044444444444, 809.50999999999988,
            809.91499999999996, 808.20833333333337, 805.71055555555552,
            804.90999999999997, 802.55944444444447, 798.32666666666648,
            795.61055555555549, 795.41611111111115, 794.21555555555551,
            795.01833333333343, 796.13166666666666, 799.03277777777782,
            800.37833333333322, 799.13777777777761, 799.38499999999988,
            797.56333333333316, 795.56944444444446, 793.08333333333337,
            792.15999999999997, 792.55944444444447, 793.64166666666654,
            794.49722222222215, 795.09833333333324, 796.72777777777765,
            799.08499999999992, 800.38333333333321, 801.97277777777765,
            803.63777777777784, 805.06888888888898, 806.03444444444449,
            806.3516666666668, 806.99722222222226, 807.1633333333333,
            805.54111111111115, 804.01833333333332, 802.59277777777777,
            801.51277777777784, 799.21722222222218, 792.38388888888892,
            786.50611111111095, 779.61666666666667, 772.52444444444438,
            765.57888888888886, 759.41222222222223, 757.92888888888876,
            756.5288888888889, 755.78611111111104, 752.13666666666666,
            748.25999999999988, 744.11777777777763, 740.05555555555554,
            735.68000000000018, 729.79500000000007, 725.08277777777778,
            720.59888888888884, 716.49000000000012, 712.79777777777781
        ]

        self.upper_band_period_6_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, 809.65944444444438,
            812.91555555555556, 814.89888888888879, 816.08944444444433,
            815.88555555555547, 817.29055555555556, 818.74666666666678,
            819.40111111111105, 818.17666666666673, 817.81166666666661,
            815.42000000000007, 811.38111111111107, 804.36722222222204,
            798.12166666666656, 790.94833333333327, 783.36277777777775,
            780.07888888888886, 779.69833333333349, 781.19111111111113,
            781.46222222222229, 783.93888888888898, 787.29722222222222,
            788.84944444444454, 786.6977777777779, 786.88277777777773,
            786.83055555555563, 786.25055555555559, 781.04611111111114,
            778.83888888888885, 779.37000000000012, 782.58500000000004,
            787.92833333333328, 792.31777777777779, 797.07333333333327,
            798.71222222222218, 800.0727777777779, 800.16666666666663,
            799.87555555555559, 802.7650000000001, 808.63888888888903,
            815.36722222222238, 822.12333333333345, 827.05333333333328,
            829.30999999999995, 829.79166666666686, 831.39833333333331,
            831.28222222222212, 827.76722222222202, 822.55944444444435,
            819.38944444444428, 817.69833333333327, 814.78166666666652,
            813.5672222222222, 812.46444444444433, 812.3844444444444,
            811.81055555555554, 810.35722222222228, 808.87777777777774,
            807.15499999999997, 807.51444444444451, 808.60444444444431,
            810.17444444444436, 810.04888888888877, 812.54111111111104,
            814.63166666666655, 814.91999999999996, 813.18333333333339,
            810.61555555555549, 809.74000000000001, 807.4327777777778,
            803.26333333333309, 800.67722222222221, 800.47277777777788,
            799.28555555555556, 800.20833333333348, 801.29500000000007,
            804.16611111111115, 805.29333333333329, 804.00444444444429,
            804.41499999999996, 802.52166666666653, 800.46444444444444,
            798.01333333333332, 797.19833333333327, 797.56944444444446,
            798.53499999999985, 799.34222222222218, 800.04833333333329,
            801.67777777777769, 804.15666666666664, 805.51166666666654,
            807.04444444444437, 808.75111111111119, 810.12388888888893,
            810.95611111111111, 811.17833333333351, 811.85722222222228,
            812.01666666666665, 810.44444444444446, 808.92333333333329,
            807.45611111111111, 806.41277777777782, 804.04222222222211,
            797.27722222222224, 791.31277777777757, 784.48333333333335,
            777.49777777777774, 770.40222222222224, 764.19055555555553,
            762.71722222222206, 761.45388888888897, 760.74111111111108,
            757.18833333333339, 753.44499999999994, 749.42777777777769,
            745.33388888888885, 740.91333333333353, 734.8366666666667,
            730.04611111111114, 725.63555555555547, 721.46166666666682,
            717.84277777777777
        ]

        self.lower_band_period_6_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, 799.40277777777771,
            802.76555555555547, 804.84555555555551, 806.31611111111101,
            806.49222222222227, 807.83055555555575, 809.12666666666689,
            809.55111111111114, 808.33000000000015, 807.71833333333336,
            805.22333333333336, 801.11444444444442, 794.23722222222216,
            788.1149999999999, 780.93499999999995, 773.40277777777771,
            770.28555555555556, 770.00500000000011, 771.65777777777782,
            772.01888888888891, 774.36555555555572, 777.87388888888881,
            779.26277777777773, 776.93111111111125, 776.91611111111104,
            776.91055555555556, 776.18055555555543, 770.82277777777779,
            768.64888888888879, 769.52333333333331, 772.81166666666672,
            778.04500000000007, 782.55111111111114, 787.06333333333328,
            788.88888888888891, 790.29277777777793, 790.1633333333333,
            789.74888888888881, 792.75166666666655, 798.88888888888903,
            805.46388888888896, 812.02666666666687, 817.05666666666662,
            819.55999999999995, 819.83166666666682, 821.57500000000005,
            821.56222222222209, 817.88055555555547, 812.78944444444437,
            809.27944444444438, 807.68166666666662, 804.76499999999987,
            803.40722222222212, 802.48111111111098, 802.03777777777782,
            801.74722222222226, 800.1205555555556, 798.44444444444434,
            796.85500000000002, 797.12444444444441, 798.3644444444443,
            799.82111111111112, 799.93888888888887, 802.46777777777777,
            804.38833333333321, 804.90999999999997, 803.23333333333335,
            800.80555555555554, 800.07999999999993, 797.68611111111113,
            793.38999999999987, 790.54388888888877, 790.35944444444442,
            789.14555555555546, 789.82833333333338, 790.96833333333325,
            793.8994444444445, 795.46333333333314, 794.27111111111094,
            794.35499999999979, 792.60499999999979, 790.67444444444448,
            788.15333333333342, 787.12166666666667, 787.54944444444448,
            788.74833333333322, 789.65222222222212, 790.1483333333332,
            791.7777777777776, 794.01333333333321, 795.25499999999988,
            796.90111111111094, 798.5244444444445, 800.01388888888903,
            801.11277777777786, 801.52500000000009, 802.13722222222225,
            802.30999999999995, 800.63777777777784, 799.11333333333334,
            797.72944444444443, 796.61277777777786, 794.39222222222224,
            787.4905555555556, 781.69944444444434, 774.75, 767.55111111111103,
            760.75555555555547, 754.63388888888892, 753.14055555555547,
            751.60388888888883, 750.831111111111, 747.08499999999992,
            743.07499999999982, 738.80777777777757, 734.77722222222224,
            730.44666666666683, 724.75333333333344, 720.11944444444441,
            715.5622222222222, 711.51833333333343, 707.75277777777785
        ]
Exemple #28
0
class TestVolumeIndex(unittest.TestCase):
    def setUp(self):
        """Create data to use for testing."""
        self.close_data = SampleData().get_sample_close_data()
        self.high_data = SampleData().get_sample_high_data()
        self.low_data = SampleData().get_sample_low_data()
        self.volume = SampleData().get_sample_volume()

        self.pvi_expected = [
            1.0, 1.0131617136727868, 1.0152943403369297, 1.0220581740172878,
            1.0220581740172878, 1.0244368189382491, 1.0244368189382491,
            1.028220752029624, 1.028220752029624, 1.0248545154752871,
            1.0248545154752871, 1.0276690488102527, 1.0244650041655374,
            1.0151167327315447, 1.0151167327315447, 0.9972084407513031,
            0.99256833708695491, 0.99256833708695491, 0.99517706110413839,
            0.97758096185097998, 0.97758096185097998, 0.97758096185097998,
            0.99466607532561435, 0.99006720628561307, 0.99006720628561307,
            0.9885444164271886, 0.9885444164271886, 0.9885444164271886,
            0.97742203212921208, 0.99025749033944777, 0.99025749033944777,
            0.98413804996477638, 0.98413804996477638, 1.0083488755746211,
            1.0195070218621587, 1.0195070218621587, 1.027593827643883,
            1.0150016965753139, 0.9885139274029372, 0.9885139274029372,
            0.99638725967223263, 1.0179472995621497, 1.0179472995621497,
            1.0179472995621497, 1.0152023345418555, 1.021102146237058,
            1.021102146237058, 1.021102146237058, 1.021102146237058,
            1.0180911055175035, 1.0180911055175035, 1.0111978893126188,
            1.0111978893126188, 1.0111978893126188, 1.0105443684296427,
            1.0202089368721159, 1.0202089368721159, 1.026005793363354,
            1.0090436871955135, 1.0090436871955135, 1.0090436871955135,
            1.0110083017906049, 1.0110083017906049, 1.0110083017906049,
            1.0092228233579721, 1.018552576858067, 1.018552576858067,
            1.018552576858067, 1.0341738093020001, 1.0341738093020001,
            1.0203332823118929, 1.0136791827974183, 1.0136791827974183,
            1.016967245623978, 1.016967245623978, 1.0032973415572677,
            1.0032973415572677, 1.0032973415572677, 0.9903105679265346,
            1.0083463579978427, 1.0083463579978427, 1.0083463579978427,
            0.99443202185309887, 0.99443202185309887, 0.99248437258108435,
            0.99508542677016176, 0.99998596364813397, 0.99671893906281928,
            0.99671893906281928, 0.99961601167730751, 1.0033822060761421,
            1.0038356609201491, 1.0038356609201491, 1.0077272266662285,
            1.0077272266662285, 1.0077272266662285, 1.0137268757771734,
            1.0137268757771734, 1.0151713784810255, 1.0155356443802577,
            1.0142669941794833, 1.0142669941794833, 1.0164083126724668,
            1.0164083126724668, 1.0164083126724668, 1.017934986150671,
            1.017934986150671, 1.0057341023553226, 1.0057341023553226,
            1.0006518515247116, 0.99497864129519231, 0.99497864129519231,
            0.99729034581610199, 0.99089375432926652, 0.99089375432926652,
            0.98609032526181195, 0.98609032526181195, 0.98609032526181195,
            0.98609032526181195, 0.97762050893175678, 0.98168119619126104,
            0.97456494228104062, 0.96194062743466069, 0.96194062743466069,
            0.96426638949233867, 0.96426638949233867, 0.97159869360741902
        ]

        self.nvi_expected = [
            1.0, 1.0, 1.0, 1.0, 0.99737014309878635, 0.99737014309878635,
            1.0004742987659747, 1.0004742987659747, 0.99716065719744162,
            0.99716065719744162, 1.0043145436667653, 1.0043145436667653,
            1.0043145436667653, 1.0043145436667653, 1.0062413756294879,
            1.0062413756294879, 1.0062413756294879, 0.98680231838995269,
            0.98680231838995269, 0.98680231838995269, 0.98663450803834407,
            1.001543812354337, 1.001543812354337, 1.001543812354337,
            0.9944189699523458, 0.9944189699523458, 0.9944189699523458,
            0.99416561480076548, 0.99416561480076548, 0.99416561480076548,
            0.98635048365765376, 0.98635048365765376, 0.95843298325586723,
            0.95843298325586723, 0.95843298325586723, 0.98950906327275012,
            0.98950906327275012, 0.98950906327275012, 0.98950906327275012,
            0.99088989143683581, 0.99088989143683581, 0.99088989143683581,
            0.99632731175782552, 1.0082109045860519, 1.0082109045860519,
            1.0082109045860519, 1.0161210862361918, 1.024938792602782,
            1.0106146186998928, 1.0106146186998928, 1.0173304832838312,
            1.0173304832838312, 0.99918797201758558, 0.99641396346902655,
            0.99641396346902655, 0.99641396346902655, 0.99371355483156543,
            0.99371355483156543, 0.99371355483156543, 0.99665482086415003,
            0.99435889590200588, 0.99435889590200588, 0.99137380024919031,
            0.99593195460701656, 0.99593195460701656, 0.99593195460701656,
            0.99675568915703361, 0.98682169637474004, 0.98682169637474004,
            0.9880204711359688, 0.9880204711359688, 0.9880204711359688,
            0.98259721740583439, 0.98259721740583439, 0.98661148727656012,
            0.98661148727656012, 0.98443970883380372, 0.99704600899003337,
            0.99704600899003337, 0.99704600899003337, 1.0034417876586332,
            1.0034790446217512, 1.0034790446217512, 0.99659080642219422,
            0.99659080642219422, 0.99659080642219422, 0.99659080642219422,
            0.99659080642219422, 0.99417854456756283, 0.99417854456756283,
            0.99417854456756283, 0.99417854456756283, 0.9975467383944433,
            0.9975467383944433, 1.000864645328748, 0.99560818602833268,
            0.99560818602833268, 0.99695467086972778, 0.99695467086972778,
            0.99695467086972778, 0.99695467086972778, 0.994176709793965,
            0.994176709793965, 0.98225048254896785, 0.98430800315838363,
            0.98430800315838363, 0.98531676754696274, 0.98531676754696274,
            0.9535660945461697, 0.9535660945461697, 0.9535660945461697,
            0.95340247863870453, 0.95340247863870453, 0.95340247863870453,
            0.95677675074268698, 0.95677675074268698, 0.956510065780109,
            0.93419742391107474, 0.93441331173792364, 0.93441331173792364,
            0.93441331173792364, 0.93441331173792364, 0.93441331173792364,
            0.92071826863351425, 0.92071826863351425, 0.91541969388983713,
            0.91541969388983713
        ]

    def test_pvi(self):
        pvi = volume_index.positive_volume_index(self.close_data, self.volume)
        np.testing.assert_array_equal(pvi, self.pvi_expected)

    def test_pvi_invalid_data(self):
        self.close_data.append(1)
        with self.assertRaises(Exception) as cm:
            volume_index.positive_volume_index(self.close_data, self.volume)
        expected = (
            "Error: mismatched data lengths, check to ensure that all input data is the same length and valid"
        )
        self.assertEqual(str(cm.exception), expected)

    def test_nvi(self):
        nvi = volume_index.negative_volume_index(self.close_data, self.volume)
        np.testing.assert_array_equal(nvi, self.nvi_expected)

    def test_nvi_invalid_data(self):
        self.close_data.append(1)
        with self.assertRaises(Exception) as cm:
            volume_index.negative_volume_index(self.close_data, self.volume)
        expected = (
            "Error: mismatched data lengths, check to ensure that all input data is the same length and valid"
        )
        self.assertEqual(str(cm.exception), expected)
    def setUp(self):
        """Create data to use for testing."""
        self.close_data = SampleData().get_sample_close_data()
        self.high_data = SampleData().get_sample_high_data()
        self.low_data = SampleData().get_sample_low_data()

        self.positive_directional_movement_expected = [
            0, 10.389999999999986, 1.9500000000000455, 5.6299999999999955, 0,
            1.92999999999995, 2.6100000000000136, 2.6200000000000045, 0, 0,
            6.409999999999968, 1.9300000000000637, 0, 0, 2.4200000000000728, 0,
            0, 0, 2.2999999999999545, 0, 0, 11.530000000000086,
            13.739999999999895, 0, 0, 0, 5.439999999999941, 0, 0,
            9.81000000000006, 0, 0, 0, 18.379999999999995, 8.43999999999994,
            25.600000000000023, 6.1299999999999955, 0, 0, 0.34000000000003183,
            6.659999999999968, 17.519999999999982, 3.9500000000000455,
            9.620000000000005, 0, 4.9500000000000455, 6.67999999999995,
            6.899999999999977, 0, 0, 4.769999999999982, 0, 0, 0, 0,
            7.8700000000000045, 0, 4.310000000000059, 0, 2.509999999999991, 0,
            1.6499999999999773, 0, 3.5699999999999363, 0, 7.279999999999973,
            0.20000000000004547, 0, 12.670000000000073, 0.67999999999995, 0, 0,
            0, 2.2100000000000364, 3.599999999999909, 0, 0, 9.470000000000027,
            0, 14.670000000000073, 5.009999999999991, 0.36000000000001364, 0,
            0, 0, 1.490000000000009, 4.1099999999999, 0, 0, 2.1000000000000227,
            2.7200000000000273, 0.5099999999999909, 2.8799999999999955,
            3.6299999999999955, 2.67999999999995, 0, 4.1099999999999,
            1.1200000000000045, 1.25, 0.6200000000000045, 0, 0,
            1.2099999999999227, 0, 1.740000000000009, 0.9099999999999682,
            1.2300000000000182, 0, 0, 0, 0, 0, 1.3100000000000591, 0,
            2.6299999999999955, 0, 0, 0, 0.16999999999995907, 0,
            2.7000000000000455, 0, 0, 0, 1.9099999999999682, 0,
            5.7000000000000455
        ]

        self.negative_directional_movement_expected = [
            0, 0, 0, 0, 2.1700000000000728, 0, 0, 0, 2.240000000000009,
            2.8600000000000136, 0, 0, 2.439999999999941, 7.600000000000023, 0,
            14.430000000000064, 4.209999999999923, 14.6400000000001, 0,
            13.569999999999936, 0.6399999999999864, 0, 0, 3.240000000000009,
            5.5, 1.3199999999999363, 0, 0, 9.350000000000023, 0,
            5.8599999999999, 5.440000000000055, 21.75999999999999, 0, 0, 0, 0,
            10.100000000000023, 21.129999999999995, 0, 0, 0, 0, 0,
            2.730000000000018, 0, 0, 0, 11.100000000000023, 2.5299999999999727,
            0, 5.399999999999977, 15.5, 1.7100000000000364, 1.080000000000041,
            0, 2.1200000000000045, 0, 13.170000000000073, 0,
            0.9800000000000182, 0, 2.3899999999999864, 0, 1.7900000000000773,
            0, 0, 7.57000000000005, 0, 0, 10.839999999999918,
            5.490000000000009, 3.9700000000000273, 0, 0, 10.419999999999959,
            1.9800000000000182, 0, 10.120000000000005, 0, 0, 0,
            10.709999999999923, 6.050000000000068, 1.759999999999991, 0, 0,
            3.1299999999999955, 1.4800000000000182, 0, 0, 0, 0, 0, 0,
            3.689999999999941, 0, 0, 0, 0, 1.7000000000000455,
            2.1100000000000136, 0, 9.81000000000006, 0, 0, 0,
            9.040000000000077, 25.879999999999995, 3.6499999999999773,
            4.82000000000005, 0, 0, 4.710000000000036, 0, 3.3799999999999955,
            0.6399999999999864, 17.360000000000014, 0, 6.349999999999909, 0,
            5.340000000000032, 9.17999999999995, 10.670000000000073, 0,
            3.67999999999995, 0
        ]

        self.pdi_period_6_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, 17.17245993, 22.34368913,
            23.57568532, 21.3664846, 18.68190766, 30.78607353, 29.69853337,
            24.57613861, 19.41692593, 20.31205509, 12.95026625, 8.63862852,
            5.43198116, 5.79388242, 4.02329203, 3.22520994, 9.9921133,
            17.18109472, 14.40626259, 12.06687531, 10.0985882, 12.9820837,
            11.9385369, 10.94301187, 19.04670199, 17.10645221, 15.10913495,
            10.63037333, 22.45714669, 23.2089878, 31.23989143, 25.06202808,
            18.48205104, 15.20424809, 13.17587555, 14.38245103, 20.61384189,
            19.63889159, 20.6313393, 16.97525788, 16.60891728, 18.05079377,
            19.22459986, 17.22893117, 15.32039154, 17.03163344, 15.31391622,
            12.2956512, 10.38441109, 8.72022651, 12.83032279, 11.19141574,
            13.76350945, 12.17356566, 12.96181227, 11.30953289, 11.43545029,
            9.83177567, 13.57862577, 12.91268391, 21.26366754, 18.42660118,
            15.66738138, 31.02761477, 26.20788376, 21.42953827, 16.92693481,
            12.81773976, 12.35104846, 13.45005333, 11.38708826, 9.83313238,
            19.10158785, 16.29690792, 30.51435893, 29.48650644, 23.8610897,
            19.17796695, 15.5221913, 12.799587, 11.99985872, 13.83323059,
            12.80809723, 11.90756706, 13.71799765, 16.59868988, 15.92326873,
            18.45930389, 20.88960736, 21.22000487, 18.19837649, 22.26908561,
            21.35843931, 20.911531, 19.21386894, 16.50609783, 15.3470583,
            17.0388589, 12.89321658, 13.47788976, 12.570757, 12.59568964,
            9.29785548, 5.44570513, 3.50887115, 2.38033623, 1.71604366,
            2.1623727, 1.99498727, 3.89315676, 3.69393546, 3.47303828,
            2.71515231, 2.34616071, 1.80983659, 3.63000195, 2.90280805,
            2.48823796, 1.95703675, 2.99310996, 2.40886917, 6.09048059
        ]

        self.pdi_period_8_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            12.84476524, 13.96304263, 13.55268862, 21.45098964, 21.60062608,
            19.73122073, 17.17602708, 18.19149004, 13.01014933, 9.49887776,
            6.380009, 6.03799823, 4.41258806, 3.48581839, 7.56583328,
            12.2591115, 10.88751608, 9.73831828, 8.6864877, 10.13572008,
            9.00038007, 8.43561508, 12.89859492, 12.19732074, 11.42117359,
            9.32564335, 17.32057505, 18.67369813, 25.58091393, 22.10649176,
            17.53458861, 14.1852722, 11.74850059, 12.33811672, 16.61062459,
            16.23226351, 17.32367098, 15.16910778, 14.76135521, 14.70915491,
            14.68981437, 13.28379614, 12.14923166, 13.04729963, 12.14590806,
            10.80378591, 9.5095975, 8.34765736, 10.7302867, 9.7082254,
            10.594433, 9.61971968, 10.1958856, 9.50345605, 9.70219954,
            8.94750232, 10.33102091, 9.44928437, 13.66391887, 12.81202149,
            11.83017472, 20.07584789, 18.21899147, 16.33282596, 14.28013273,
            12.07487794, 11.87595887, 12.7004416, 10.5191214, 8.6957451,
            13.93208101, 12.72613563, 21.69167286, 22.22874858, 19.50558145,
            16.9222296, 14.69757703, 12.77779333, 12.1085504, 13.38348903,
            11.75411621, 10.31843813, 11.32121047, 12.86483312, 12.52305946,
            14.16633928, 16.00642705, 16.3895316, 14.2861356, 16.44414651,
            15.87543075, 15.35793012, 14.61632587, 13.48522723, 12.38948681,
            12.7451686, 11.08734197, 11.65588668, 11.19721034, 11.16458894,
            9.22205285, 6.12259108, 4.31082792, 3.25191814, 2.53744095,
            2.63369749, 2.1140582, 2.87420126, 2.71562928, 2.59996554,
            2.29828068, 2.11335075, 1.80843654, 2.86489709, 2.46142161,
            2.06507807, 1.66905275, 2.27104756, 1.97768954, 4.15227219
        ]

        self.pdi_period_10_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, 9.23796092, 15.5995123, 16.40825818, 15.90888348,
            14.90895578, 16.1807485, 12.28384969, 9.44483311, 6.68153207,
            6.22348195, 4.67433429, 3.68787643, 6.75746194, 9.99991825,
            8.62772646, 7.85688094, 7.23360865, 8.39261652, 7.73922191,
            7.11879706, 9.81349491, 9.38208089, 8.91130174, 7.82816511,
            13.48221055, 14.88002142, 20.59742968, 18.77397222, 15.70234562,
            13.29192855, 11.44190072, 11.41683073, 13.85433948, 13.48620514,
            14.48624857, 13.18851537, 13.0821946, 13.19017287, 13.11744946,
            11.56230575, 10.35806537, 10.73320087, 10.07749647, 9.36513023,
            8.63366317, 7.93337868, 9.33499044, 8.54933336, 9.19910811,
            8.50945759, 8.58747767, 8.04623548, 8.2305099, 7.84340488,
            8.74270827, 8.28512284, 10.7358965, 10.20131258, 9.7341179,
            14.90397082, 14.12850872, 13.06025751, 12.01211781, 10.78861374,
            10.78457648, 11.46714592, 10.06039425, 8.78167148, 11.99825462,
            10.53672855, 16.42508872, 17.25684654, 15.8554005, 14.40064092,
            13.06836317, 11.85021947, 11.45372658, 12.35840495, 11.18484707,
            10.18551662, 10.30943542, 10.73443819, 10.59925334, 11.63618884,
            12.86881587, 13.37773238, 12.2448139, 13.65021225, 13.02220293,
            12.62069281, 12.0621268, 11.15607388, 10.48568678, 10.80393103,
            9.91731286, 10.38219181, 10.18796769, 10.25310323, 8.94502008,
            6.61354932, 5.05227241, 3.93469587, 3.15677541, 3.13416339,
            2.62786862, 3.08810535, 2.63328955, 2.32763682, 2.1118975,
            1.99106827, 1.80419988, 2.48943087, 2.23677705, 1.96527941,
            1.67833889, 1.99976772, 1.73597824, 3.16818521
        ]

        self.ndi_period_6_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, 2.5923733, 2.6739039,
            2.25765683, 6.42575461, 11.48554738, 10.26052582, 8.49297409,
            12.32086135, 25.36417281, 20.29206827, 34.73464475, 28.26067756,
            31.12756748, 22.68505435, 24.77501448, 20.26984538, 16.77397286,
            14.0828462, 13.89447581, 15.19756665, 13.57650704, 12.28982335,
            11.30192293, 18.37189092, 16.63853606, 20.82543767, 24.18118692,
            36.55775221, 26.96984518, 20.51573288, 14.08388656, 9.90425555,
            11.8138514, 19.03283368, 16.30087656, 13.95802082, 11.90470381,
            10.22183058, 8.33364214, 8.15137653, 6.84043491, 6.04184767,
            5.22232067, 10.94683579, 11.25833631, 10.21637339, 13.00820144,
            21.01492078, 18.9302344, 16.64870457, 13.96340564, 13.73522997,
            12.61462794, 22.46058077, 19.72608661, 18.13966186, 15.73301658,
            15.95717761, 15.27139134, 16.90803792, 14.64139151, 12.49261706,
            21.57404737, 17.77263493, 14.46770852, 26.69003336, 28.21580466,
            26.05366008, 20.17610312, 15.87778011, 24.41167997, 23.24020572,
            19.9699335, 28.69200178, 23.94103206, 18.85174348, 15.01552561,
            22.82595723, 24.37690436, 21.80016034, 18.00950344, 14.90040717,
            17.10037193, 17.64106934, 16.26847628, 15.0253795, 13.68514299,
            11.81598791, 9.64768734, 7.86075892, 12.69203057, 10.80763685,
            9.42804572, 8.23333447, 7.10779159, 9.38798882, 13.27361589,
            12.24206696, 30.49859454, 23.60634101, 18.93331113, 15.45858494,
            26.59318714, 46.12312506, 33.05005186, 26.00140554, 18.74506069,
            14.86703641, 16.90599333, 15.92742851, 18.05892823, 17.60847835,
            29.78412757, 24.06789591, 23.82543514, 19.24759256, 19.50619078,
            23.99595546, 26.85455429, 21.8925964, 20.21998448, 17.00298171
        ]

        self.ndi_period_8_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, 1.21688582,
            3.6523134, 6.84422655, 6.67236319, 5.93459491, 8.74888223,
            17.92815525, 15.5833363, 27.0423641, 23.61411971, 26.19126936,
            19.2041072, 20.73615841, 16.66633071, 13.47000474, 11.76734413,
            11.80296643, 12.90355561, 12.08392381, 10.75289478, 9.54842272,
            13.44459518, 12.54287699, 15.107347, 17.37111957, 26.22212362,
            21.68289548, 18.10542083, 13.92080741, 10.74052326, 12.05854934,
            16.60111117, 13.62839176, 11.95754495, 10.77060681, 9.69826919,
            8.49296382, 8.31953497, 7.22458845, 6.17420613, 5.27895004,
            8.28742006, 8.41671015, 7.87038747, 9.35809862, 14.25166666,
            13.20230156, 12.00598228, 10.90010644, 10.73968639, 9.68530271,
            14.62658584, 13.69421725, 13.25888059, 12.30382905, 12.6952261,
            11.65872485, 11.77168431, 11.01740856, 10.21734746, 15.04013251,
            13.38816717, 11.80558415, 19.01515414, 20.89236945, 20.64784621,
            17.5504017, 14.98186856, 19.42956968, 17.32205934, 15.48472888,
            21.01492869, 18.90822611, 16.36141671, 14.17589493, 19.55761812,
            21.05688828, 19.48296367, 16.95233747, 14.89612456, 15.17980001,
            14.32058763, 13.58779091, 12.86541632, 12.09151368, 11.18703315,
            10.01320582, 8.72321242, 10.95756392, 9.71079804, 8.74810105,
            7.79788081, 7.10484381, 8.35717042, 10.02671206, 9.17472225,
            19.33394357, 16.83178092, 14.6630253, 12.78095517, 20.3023948,
            34.64724347, 26.79695286, 22.94956335, 17.90732713, 14.31330591,
            13.48644276, 11.43919777, 12.30830834, 12.0948933, 19.2088228,
            16.95977826, 17.58724412, 15.25719286, 15.62537469, 17.258048,
            18.40252711, 16.19716284, 15.64280003, 13.81978726
        ]

        self.ndi_period_10_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, 4.15544868, 4.61551901, 4.35605974, 6.51930975,
            13.55562287, 12.50272501, 21.71288972, 19.74078936, 22.29138346,
            17.05357195, 18.2833707, 14.65125133, 12.04619319, 10.30454995,
            9.84438834, 10.60316774, 10.16426734, 9.39949145, 8.6677081,
            11.03849605, 10.13090354, 11.76684573, 13.21549775, 19.57031502,
            17.24535171, 15.23684361, 12.61267555, 10.38533088, 11.46368108,
            15.16922417, 12.96261451, 11.16143402, 9.67030469, 8.78395402,
            7.98972071, 7.91110403, 7.15131082, 6.36397621, 5.57749269,
            7.36992742, 7.15901389, 6.66761238, 7.54300977, 10.81162599,
            10.39681026, 9.83055575, 9.0176576, 8.82274091, 8.26201493,
            11.38982632, 10.51383451, 10.14891803, 9.70923546, 10.06984929,
            9.56951005, 9.74919128, 9.21322642, 8.68271498, 11.64010235,
            10.86078492, 10.06133242, 14.5663087, 16.12267122, 16.44722376,
            14.77508562, 13.27545126, 16.66119448, 15.46760333, 13.55351659,
            16.38976002, 15.1542872, 13.79236112, 12.53838876, 16.4170659,
            17.76276337, 16.94664006, 15.35619125, 13.90608578, 14.1066874,
            13.57406884, 12.34820597, 11.22213442, 10.79480165, 10.19911148,
            9.43738339, 8.65153409, 10.13202568, 9.23026889, 8.34379998,
            7.59273782, 7.02043792, 7.59966392, 8.57733816, 8.12912603,
            14.62444472, 13.40237849, 12.26371512, 11.20588153, 16.50109118,
            28.01589467, 23.29544755, 20.30596278, 16.29131353, 13.65525305,
            13.08456347, 11.09341275, 10.50692447, 9.48213145, 13.92941996,
            12.78172674, 13.58201465, 12.29941353, 12.74053942, 14.02936805,
            15.10801004, 13.13423495, 12.40651749, 11.34282051
        ]

        self.adx_period_6_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, 73.76782014, 76.41654278,
            78.83164022, 70.76045107, 57.69017918, 55.76448404, 55.70895193,
            50.82380268, 43.06241038, 34.51272381, 36.66416226, 39.76401887,
            45.37515422, 47.89399657, 52.20101789, 55.78567267, 50.47144949,
            43.447372, 36.28329945, 32.03916018, 29.08341871, 24.61172374,
            20.91044057, 21.65838335, 19.14705308, 17.57621837, 18.50188508,
            24.61275979, 22.01919342, 19.36474044, 22.45682324, 25.94918316,
            25.29108759, 22.93488111, 20.87584473, 17.6415762, 19.1667842,
            21.23044453, 24.77111471, 26.49670987, 29.02499039, 32.49661081,
            36.62817734, 34.23871271, 31.07858091, 30.06724666, 26.41218477,
            26.3727615, 26.83603916, 27.5722316, 23.68132182, 21.43513024,
            18.58833262, 20.44069951, 20.48283681, 20.93453441, 20.08178823,
            20.69351214, 18.22245218, 17.41834785, 17.58926777, 17.85637572,
            17.52372151, 19.13006583, 20.75222451, 19.1155327, 20.09745801,
            22.42298075, 22.6953171, 20.29240626, 22.97414377, 25.90135997,
            21.95486869, 22.88763239, 21.08486333, 21.23750624, 21.49007493,
            19.3558743, 19.8286899, 20.85947667, 20.7205471, 17.88612705,
            17.29700051, 17.64810224, 16.12432329, 14.26610926, 13.14827215,
            14.61406508, 18.31401109, 22.91808104, 22.06930476, 24.16627104,
            26.59723404, 29.41446476, 32.17752621, 31.39615891, 27.37089263,
            25.53940518, 28.04501144, 27.92284562, 26.63503405, 23.89666922,
            27.94529684, 36.43439039, 43.82937485, 50.39552658, 55.86731968,
            58.99014215, 62.30680495, 62.04167517, 62.70760415, 63.43156065,
            66.74146724, 69.32380835, 72.08319131, 71.44697231, 71.88789007,
            73.44151466, 75.60375131, 75.6606507, 76.16883479, 71.34963535
        ]

        self.adx_period_8_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            82.69213454, 69.80705958, 55.82647992, 54.83656041, 55.36468478,
            51.55411247, 41.38384671, 34.97347929, 34.98439365, 36.28084667,
            40.26616688, 42.127769, 45.58452836, 48.51381184, 45.55932571,
            39.39211184, 34.46321387, 31.64830476, 29.57273494, 25.99806974,
            22.93195936, 22.92678291, 20.10487131, 18.87403035, 19.10614935,
            22.77325335, 21.28418192, 18.75669215, 20.13043706, 21.97302364,
            21.53242928, 19.79757988, 18.22974465, 16.12435877, 16.78101408,
            17.84181442, 19.9020043, 21.06669165, 22.72743794, 25.00612435,
            27.78298761, 27.20326774, 26.06784621, 25.90252254, 24.28124157,
            22.96337838, 22.12373876, 21.60414275, 18.99800901, 17.25159901,
            15.65375606, 16.27889175, 16.07428692, 16.127342, 15.58886986,
            15.80492311, 14.58343231, 14.12829274, 13.70243515, 13.39788039,
            13.21635705, 14.06261384, 14.97505552, 14.05153777, 14.64512764,
            16.08955434, 16.48885403, 15.45781253, 17.24481153, 19.23381197,
            17.48921451, 18.37385813, 16.9340164, 16.71778023, 16.60602661,
            15.43325627, 15.72736702, 16.35950174, 16.39802988, 15.01685133,
            14.72959512, 14.91879057, 14.19136097, 12.41770032, 11.08462366,
            11.16793701, 12.65114051, 14.88571613, 14.67321918, 16.05708448,
            17.66810701, 19.54067794, 21.42077435, 21.67787049, 20.28569225,
            19.78605608, 20.70130105, 20.38474956, 19.51191693, 17.9166967,
            20.36828544, 26.56789383, 32.28248418, 37.64437878, 42.33603538,
            45.65883688, 49.0636794, 50.41059667, 52.09043544, 53.65587457,
            56.77735466, 59.41012318, 62.15288011, 62.93155355, 64.16287414,
            65.97074505, 68.14552662, 69.05307004, 70.11548496, 68.07503858
        ]

        self.adx_period_10_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, 37.94785935, 46.57307644, 50.80545905, 48.20574644,
            37.59518728, 32.30825637, 31.43168004, 32.10693775, 35.66083635,
            37.32914545, 40.52791046, 43.21105069, 41.18843088, 36.04236479,
            32.33306404, 30.19041194, 28.58875108, 25.89084586, 23.55168652,
            23.32807871, 20.8873562, 19.82123798, 19.78076851, 22.2884113,
            21.20658549, 19.06610814, 19.59454012, 20.56258015, 20.04208764,
            18.63795538, 17.34807637, 15.66872117, 15.88717513, 16.42487071,
            17.70485646, 18.4523997, 19.56085336, 21.1242161, 23.07701907,
            22.98233059, 22.50398122, 22.59106158, 21.76138885, 20.28787214,
            19.17586556, 18.31954621, 16.64868768, 15.1315492, 14.1494444,
            14.18214204, 13.77051304, 13.54816133, 13.01561782, 12.95676039,
            12.11001027, 11.70973667, 11.30103224, 10.97437472, 10.76824683,
            11.2615787, 11.81767739, 11.18012765, 11.52358641, 12.4499539,
            12.76654715, 12.22021771, 13.46948218, 14.88079343, 14.00077233,
            14.77488781, 13.69920745, 13.44496244, 13.268603, 12.59577337,
            12.85891054, 13.34296414, 13.46430895, 12.70694118, 12.59148319,
            12.7585546, 12.38244107, 11.36613567, 10.32075872, 9.94677331,
            10.49049744, 11.58699292, 11.37245647, 12.16703836, 13.14006506,
            14.31358073, 15.52434512, 15.86810354, 15.282334, 15.16686456,
            15.56820543, 15.28118249, 14.67758205, 13.65378998, 15.25789873,
            19.91262204, 24.35696606, 28.67500183, 32.56121637, 35.5716483,
            38.66957743, 40.44753227, 42.394818, 44.213473, 47.15908364,
            49.74761149, 52.42765661, 53.81826799, 55.44956593, 57.44720013,
            59.70284513, 61.0898195, 62.52586245, 61.90667742
        ]
Exemple #30
0
    def setUp(self):
        """Create data to use for testing."""
        self.data = SampleData().get_sample_close_data()

        self.aroon_up_period_6_expected = np.array([
            np.nan, np.nan, np.nan, np.nan, np.nan, 50.0, 16.666666666666664,
            16.666666666666664, 33.333333333333329, 50.0, 16.666666666666664,
            16.666666666666664, 33.333333333333329, 50.0, 66.666666666666657,
            83.333333333333343, 100.0, 100.0, 83.333333333333343, 100.0, 100.0,
            100.0, 16.666666666666664, 33.333333333333329, 50.0,
            66.666666666666657, 83.333333333333343, 100.0, 100.0,
            16.666666666666664, 33.333333333333329, 50.0, 66.666666666666657,
            83.333333333333343, 100.0, 16.666666666666664, 16.666666666666664,
            33.333333333333329, 50.0, 66.666666666666657, 83.333333333333343,
            100.0, 16.666666666666664, 16.666666666666664, 33.333333333333329,
            16.666666666666664, 16.666666666666664, 16.666666666666664,
            33.333333333333329, 50.0, 66.666666666666657, 83.333333333333343,
            100.0, 66.666666666666657, 83.333333333333343, 100.0, 100.0,
            16.666666666666664, 33.333333333333329, 50.0, 66.666666666666657,
            83.333333333333343, 100.0, 16.666666666666664, 33.333333333333329,
            16.666666666666664, 16.666666666666664, 33.333333333333329,
            16.666666666666664, 16.666666666666664, 33.333333333333329, 50.0,
            66.666666666666657, 83.333333333333343, 100.0, 100.0, 50.0,
            66.666666666666657, 83.333333333333343, 16.666666666666664,
            16.666666666666664, 16.666666666666664, 33.333333333333329, 50.0,
            66.666666666666657, 83.333333333333343, 100.0, 100.0, 50.0,
            66.666666666666657, 16.666666666666664, 16.666666666666664,
            16.666666666666664, 16.666666666666664, 16.666666666666664,
            33.333333333333329, 16.666666666666664, 16.666666666666664,
            16.666666666666664, 16.666666666666664, 33.333333333333329, 50.0,
            66.666666666666657, 83.333333333333343, 100.0, 100.0,
            83.333333333333343, 100.0, 50.0, 66.666666666666657,
            83.333333333333343, 100.0, 100.0, 100.0, 100.0, 66.666666666666657,
            83.333333333333343, 100.0, 83.333333333333343, 100.0, 100.0, 100.0,
            83.333333333333343, 100.0, 83.333333333333343, 100.0, 100.0
        ])

        self.aroon_down_period_14_expected = [
            np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan, np.nan,
            np.nan, np.nan, np.nan, np.nan, np.nan, 100.0, 100.0,
            7.1428571428571423, 7.1428571428571423, 7.1428571428571423,
            14.285714285714285, 7.1428571428571423, 7.1428571428571423,
            14.285714285714285, 21.428571428571427, 28.571428571428569,
            35.714285714285715, 42.857142857142854, 50.0, 57.142857142857139,
            64.285714285714292, 71.428571428571431, 78.571428571428569,
            85.714285714285708, 7.1428571428571423, 14.285714285714285,
            21.428571428571427, 28.571428571428569, 35.714285714285715,
            42.857142857142854, 50.0, 57.142857142857139, 64.285714285714292,
            71.428571428571431, 78.571428571428569, 85.714285714285708,
            92.857142857142861, 100.0, 100.0, 100.0, 78.571428571428569,
            85.714285714285708, 92.857142857142861, 100.0, 100.0, 100.0,
            7.1428571428571423, 14.285714285714285, 21.428571428571427,
            28.571428571428569, 7.1428571428571423, 14.285714285714285,
            21.428571428571427, 28.571428571428569, 7.1428571428571423,
            14.285714285714285, 21.428571428571427, 28.571428571428569,
            35.714285714285715, 42.857142857142854, 50.0, 57.142857142857139,
            64.285714285714292, 7.1428571428571423, 7.1428571428571423,
            14.285714285714285, 21.428571428571427, 7.1428571428571423,
            7.1428571428571423, 14.285714285714285, 7.1428571428571423,
            14.285714285714285, 21.428571428571427, 28.571428571428569,
            35.714285714285715, 42.857142857142854, 50.0, 57.142857142857139,
            64.285714285714292, 71.428571428571431, 78.571428571428569,
            85.714285714285708, 92.857142857142861, 100.0, 64.285714285714292,
            71.428571428571431, 78.571428571428569, 85.714285714285708,
            92.857142857142861, 100.0, 78.571428571428569, 85.714285714285708,
            92.857142857142861, 100.0, 100.0, 100.0, 100.0, 21.428571428571427,
            28.571428571428569, 7.1428571428571423, 7.1428571428571423,
            7.1428571428571423, 7.1428571428571423, 7.1428571428571423,
            14.285714285714285, 7.1428571428571423, 14.285714285714285,
            7.1428571428571423, 7.1428571428571423, 7.1428571428571423,
            14.285714285714285, 7.1428571428571423, 14.285714285714285,
            7.1428571428571423, 7.1428571428571423, 7.1428571428571423,
            14.285714285714285, 7.1428571428571423, 14.285714285714285
        ]