diff --git a/examples/PandasTA_Strategy_Examples.ipynb b/examples/PandasTA_Strategy_Examples.ipynb index d327050..00e9b9e 100644 --- a/examples/PandasTA_Strategy_Examples.ipynb +++ b/examples/PandasTA_Strategy_Examples.ipynb @@ -88,7 +88,7 @@ "text": [ "name = All\n", "description = All the indicators with their default settings. Pandas TA default.\n", - "created = 07/22/2020, 17:02:37\n", + "created = 07/25/2020, 11:24:19\n", "ta = None\n" ] } @@ -119,7 +119,7 @@ "text": [ "name = Common Price and Volume SMAs\n", "description = Common Price SMAs: 10, 20, 50, 200 and Volume SMA: 20.\n", - "created = 07/22/2020, 17:02:37\n", + "created = 07/25/2020, 11:24:19\n", "ta = [{'kind': 'sma', 'length': 10}, {'kind': 'sma', 'length': 20}, {'kind': 'sma', 'length': 50}, {'kind': 'sma', 'length': 200}, {'kind': 'sma', 'close': 'volume', 'length': 20, 'prefix': 'VOL'}]\n" ] } @@ -161,7 +161,7 @@ { "data": { "text/plain": [ - "Strategy(name='A', ta=[{'kind': 'sma', 'length': 50}, {'kind': 'sma', 'length': 200}], description=None, created='07/22/2020, 17:02:37', last_run=None, run_time=None)" + "Strategy(name='A', ta=[{'kind': 'sma', 'length': 50}, {'kind': 'sma', 'length': 200}], description=None, created='07/25/2020, 11:24:19', last_run=None, run_time=None)" ] }, "execution_count": 4, @@ -189,7 +189,7 @@ { "data": { "text/plain": [ - "Strategy(name='B', ta=[{'kind': 'ema', 'length': 8}, {'kind': 'ema', 'length': 21}, {'kind': 'log_return', 'cumulative': True}, {'kind': 'rsi'}, {'kind': 'supertrend'}], description=None, created='07/22/2020, 17:02:37', last_run=None, run_time=None)" + "Strategy(name='B', ta=[{'kind': 'ema', 'length': 8}, {'kind': 'ema', 'length': 21}, {'kind': 'log_return', 'cumulative': True}, {'kind': 'rsi'}, {'kind': 'supertrend'}], description=None, created='07/25/2020, 11:24:19', last_run=None, run_time=None)" ] }, "execution_count": 5, @@ -217,7 +217,7 @@ { "data": { "text/plain": [ - "Strategy(name='Runtime Failure', ta=[{'kind': 'percet_return'}], description=None, created='07/22/2020, 17:02:37', last_run=None, run_time=None)" + "Strategy(name='Runtime Failure', ta=[{'kind': 'percet_return'}], description=None, created='07/25/2020, 11:24:19', last_run=None, run_time=None)" ] }, "execution_count": 6, @@ -476,11 +476,11 @@ " 1999-11-04 136.7500 137.3593 135.7656 136.5312 7907500.0 NaN \n", " 1999-11-05 138.6250 139.1093 136.7812 137.8750 7431500.0 136.332267 \n", " ... ... ... ... ... ... ... \n", - " 2020-07-16 319.7900 321.2800 319.0900 320.7900 54433400.0 318.394000 \n", - " 2020-07-17 321.8800 322.5700 319.7400 321.7200 64421800.0 319.447333 \n", - " 2020-07-20 321.4300 325.1300 320.6200 324.3200 56150200.0 320.673333 \n", - " 2020-07-21 326.4500 326.9300 323.9400 325.0100 57245300.0 322.353333 \n", - " 2020-07-22 324.6200 327.2000 324.5000 326.8600 49338600.0 323.313333 \n", + " 2020-07-20 321.4300 325.1300 320.6200 324.3200 56150230.0 320.673333 \n", + " 2020-07-21 326.4500 326.9300 323.9400 325.0100 57245315.0 322.353333 \n", + " 2020-07-22 324.6200 327.2000 324.5000 326.8600 57792915.0 323.313333 \n", + " 2020-07-23 326.4700 327.2300 321.4800 322.9600 75737989.0 324.014000 \n", + " 2020-07-24 320.9500 321.9900 319.2460 320.8800 73766597.0 323.886400 \n", " \n", " ABER_SG_5_15 ABER_XG_5_15 ABER_ATR_5_15 ACCBL_20 ... \\\n", " date ... \n", @@ -490,11 +490,11 @@ " 1999-11-04 NaN NaN NaN NaN ... \n", " 1999-11-05 NaN NaN NaN NaN ... \n", " ... ... ... ... ... ... \n", - " 2020-07-16 324.301437 312.486563 5.907437 299.367555 ... \n", - " 2020-07-17 325.149608 313.745059 5.702275 299.875050 ... \n", " 2020-07-20 326.296123 315.050544 5.622790 300.906776 ... \n", " 2020-07-21 327.800604 316.906063 5.447270 301.895656 ... \n", " 2020-07-22 328.577452 318.049214 5.264119 302.558926 ... \n", + " 2020-07-23 329.310511 318.717489 5.296511 303.787477 ... \n", + " 2020-07-24 329.077410 318.695390 5.191010 305.041909 ... \n", " \n", " VAR_30 VTXP_14 VTXM_14 VWAP VWMA_10 WCP \\\n", " date \n", @@ -504,11 +504,11 @@ " 1999-11-04 NaN NaN NaN 135.950504 NaN 136.546825 \n", " 1999-11-05 NaN NaN NaN 136.393305 NaN 137.910125 \n", " ... ... ... ... ... ... ... \n", - " 2020-07-16 39.296390 1.142186 0.731933 153.225976 316.788363 320.487500 \n", - " 2020-07-17 42.042623 1.200811 0.690749 153.244606 317.735725 321.437500 \n", - " 2020-07-20 45.091757 1.223611 0.623952 153.261035 318.474591 323.597500 \n", - " 2020-07-21 46.469833 1.211493 0.661493 153.277972 319.600245 325.222500 \n", - " 2020-07-22 50.919143 1.153997 0.689436 153.292643 320.677611 326.355000 \n", + " 2020-07-20 45.091757 1.223611 0.623952 153.261128 318.474591 323.597500 \n", + " 2020-07-21 46.469833 1.211493 0.661493 153.278065 319.600245 325.222500 \n", + " 2020-07-22 50.919143 1.153997 0.689436 153.295250 320.677611 326.355000 \n", + " 2020-07-23 52.999190 1.085706 0.763560 153.317466 321.522738 323.657500 \n", + " 2020-07-24 48.773943 1.027629 0.904621 153.338694 321.846761 320.749000 \n", " \n", " WILLR_14 WMA_10 ZL_EMA_10 Z_30 \n", " date \n", @@ -518,26 +518,26 @@ " 1999-11-04 NaN NaN NaN NaN \n", " 1999-11-05 NaN NaN NaN NaN \n", " ... ... ... ... ... \n", - " 2020-07-16 -9.332227 317.993091 320.251663 1.318671 \n", - " 2020-07-17 -5.474907 318.894727 321.769543 1.365046 \n", " 2020-07-20 -3.801032 320.096545 323.215081 1.680556 \n", " 2020-07-21 -10.750280 321.291636 324.115975 1.747819 \n", " 2020-07-22 -2.058111 322.618909 325.718525 1.900614 \n", + " 2020-07-23 -25.800604 323.042909 325.442430 1.309102 \n", + " 2020-07-24 -38.368580 322.932727 323.987442 0.970050 \n", " \n", - " [5214 rows x 157 columns],\n", - " 'IWM': open high low close volume ABER_ZG_5_15 \\\n", - " date \n", - " 2000-05-26 91.06 91.44 90.63 91.44 37400.0 NaN \n", - " 2000-05-30 92.75 94.81 92.75 94.81 28800.0 NaN \n", - " 2000-05-31 95.13 96.38 95.13 95.75 18000.0 NaN \n", - " 2000-06-01 97.11 97.31 97.11 97.31 3500.0 NaN \n", - " 2000-06-02 101.70 102.40 101.70 102.40 14700.0 96.091333 \n", - " ... ... ... ... ... ... ... \n", - " 2020-07-16 146.11 146.67 144.88 146.16 30386200.0 142.972000 \n", - " 2020-07-17 146.68 147.59 145.51 146.59 20632700.0 144.200000 \n", - " 2020-07-20 146.12 146.85 145.15 145.96 19581700.0 145.160667 \n", - " 2020-07-21 147.47 149.16 147.20 148.03 24467100.0 146.623333 \n", - " 2020-07-22 147.09 148.67 147.03 148.11 19080800.0 146.904000 \n", + " [5216 rows x 157 columns],\n", + " 'IWM': open high low close volume ABER_ZG_5_15 \\\n", + " date \n", + " 2000-05-26 91.06 91.440 90.63 91.44 37400.0 NaN \n", + " 2000-05-30 92.75 94.810 92.75 94.81 28800.0 NaN \n", + " 2000-05-31 95.13 96.380 95.13 95.75 18000.0 NaN \n", + " 2000-06-01 97.11 97.310 97.11 97.31 3500.0 NaN \n", + " 2000-06-02 101.70 102.400 101.70 102.40 14700.0 96.091333 \n", + " ... ... ... ... ... ... ... \n", + " 2020-07-20 146.12 146.850 145.15 145.96 19581689.0 145.160667 \n", + " 2020-07-21 147.47 149.160 147.20 148.03 24467065.0 146.623333 \n", + " 2020-07-22 147.09 148.670 147.03 148.11 24424808.0 146.904000 \n", + " 2020-07-23 147.98 150.200 146.70 148.26 21704889.0 147.400667 \n", + " 2020-07-24 147.29 147.665 145.56 146.08 20015547.0 147.375000 \n", " \n", " ABER_SG_5_15 ABER_XG_5_15 ABER_ATR_5_15 ACCBL_20 ... \\\n", " date ... \n", @@ -547,25 +547,25 @@ " 2000-06-01 NaN NaN NaN NaN ... \n", " 2000-06-02 NaN NaN NaN NaN ... \n", " ... ... ... ... ... ... \n", - " 2020-07-16 147.233237 138.710763 4.261237 132.740467 ... \n", - " 2020-07-17 148.315822 140.084178 4.115822 133.164616 ... \n", - " 2020-07-20 149.115433 141.205900 3.954767 133.720436 ... \n", - " 2020-07-21 150.527782 142.718884 3.904449 134.312288 ... \n", - " 2020-07-22 150.657486 143.150514 3.753486 134.567792 ... \n", + " 2020-07-20 149.115307 141.206027 3.954640 133.720919 ... \n", + " 2020-07-21 150.527664 142.719003 3.904331 134.312771 ... \n", + " 2020-07-22 150.657375 143.150625 3.753375 134.568274 ... \n", + " 2020-07-23 151.137150 143.664183 3.736483 135.260831 ... \n", + " 2020-07-24 151.042385 143.707615 3.667385 135.937695 ... \n", " \n", - " VAR_30 VTXP_14 VTXM_14 VWAP VWMA_10 WCP \\\n", - " date \n", - " 2000-05-26 NaN NaN NaN 91.170000 NaN 91.2375 \n", - " 2000-05-30 NaN NaN NaN 92.454834 NaN 94.2950 \n", - " 2000-05-31 NaN NaN NaN 93.159976 NaN 95.7525 \n", - " 2000-06-01 NaN NaN NaN 93.322938 NaN 97.2600 \n", - " 2000-06-02 NaN NaN NaN 94.592497 NaN 102.2250 \n", - " ... ... ... ... ... ... ... \n", - " 2020-07-16 15.532794 1.067613 0.898394 88.352707 142.400151 145.9675 \n", - " 2020-07-17 15.940380 1.090399 0.874371 88.359302 142.830341 146.5700 \n", - " 2020-07-20 14.347839 1.085970 0.934221 88.365497 143.089584 145.9800 \n", - " 2020-07-21 11.515402 1.030077 0.909147 88.373523 143.813948 148.1050 \n", - " 2020-07-22 10.497958 1.013525 0.935595 88.379761 144.438962 147.9800 \n", + " VAR_30 VTXP_14 VTXM_14 VWAP VWMA_10 WCP \\\n", + " date \n", + " 2000-05-26 NaN NaN NaN 91.170000 NaN 91.23750 \n", + " 2000-05-30 NaN NaN NaN 92.454834 NaN 94.29500 \n", + " 2000-05-31 NaN NaN NaN 93.159976 NaN 95.75250 \n", + " 2000-06-01 NaN NaN NaN 93.322938 NaN 97.26000 \n", + " 2000-06-02 NaN NaN NaN 94.592497 NaN 102.22500 \n", + " ... ... ... ... ... ... ... \n", + " 2020-07-20 14.347839 1.085970 0.934117 88.365517 143.089584 145.98000 \n", + " 2020-07-21 11.515402 1.030077 0.909147 88.373544 143.813948 148.10500 \n", + " 2020-07-22 10.497958 1.013525 0.935595 88.381529 144.438962 147.98000 \n", + " 2020-07-23 11.200568 0.993994 0.920849 88.388676 145.342850 148.35500 \n", + " 2020-07-24 9.687226 0.945133 0.982616 88.395051 145.807709 146.34625 \n", " \n", " WILLR_14 WMA_10 ZL_EMA_10 Z_30 \n", " date \n", @@ -575,13 +575,13 @@ " 2000-06-01 NaN NaN NaN NaN \n", " 2000-06-02 NaN NaN NaN NaN \n", " ... ... ... ... ... \n", - " 2020-07-16 -14.348981 142.891818 144.553735 0.902863 \n", - " 2020-07-17 -11.142322 143.661273 146.209420 0.982248 \n", " 2020-07-20 -17.267552 144.240000 146.914980 0.906142 \n", " 2020-07-21 -9.479866 145.149091 147.299529 1.671168 \n", " 2020-07-22 -8.808725 145.942909 147.801433 1.797089 \n", + " 2020-07-23 -14.969136 146.651818 148.188445 1.763914 \n", + " 2020-07-24 -31.790123 146.797273 147.826909 1.077936 \n", " \n", - " [5070 rows x 157 columns]}" + " [5072 rows x 157 columns]}" ] }, "execution_count": 12, @@ -819,60 +819,12 @@ " ...\n", " \n", " \n", - " 2020-07-16\n", - " 319.7900\n", - " 321.2800\n", - " 319.0900\n", - " 320.7900\n", - " 54433400.0\n", - " 318.394000\n", - " 324.301437\n", - " 312.486563\n", - " 5.907437\n", - " 299.367555\n", - " ...\n", - " 39.296390\n", - " 1.142186\n", - " 0.731933\n", - " 153.225976\n", - " 316.788363\n", - " 320.487500\n", - " -9.332227\n", - " 317.993091\n", - " 320.251663\n", - " 1.318671\n", - " \n", - " \n", - " 2020-07-17\n", - " 321.8800\n", - " 322.5700\n", - " 319.7400\n", - " 321.7200\n", - " 64421800.0\n", - " 319.447333\n", - " 325.149608\n", - " 313.745059\n", - " 5.702275\n", - " 299.875050\n", - " ...\n", - " 42.042623\n", - " 1.200811\n", - " 0.690749\n", - " 153.244606\n", - " 317.735725\n", - " 321.437500\n", - " -5.474907\n", - " 318.894727\n", - " 321.769543\n", - " 1.365046\n", - " \n", - " \n", " 2020-07-20\n", " 321.4300\n", " 325.1300\n", " 320.6200\n", " 324.3200\n", - " 56150200.0\n", + " 56150230.0\n", " 320.673333\n", " 326.296123\n", " 315.050544\n", @@ -882,7 +834,7 @@ " 45.091757\n", " 1.223611\n", " 0.623952\n", - " 153.261035\n", + " 153.261128\n", " 318.474591\n", " 323.597500\n", " -3.801032\n", @@ -896,7 +848,7 @@ " 326.9300\n", " 323.9400\n", " 325.0100\n", - " 57245300.0\n", + " 57245315.0\n", " 322.353333\n", " 327.800604\n", " 316.906063\n", @@ -906,7 +858,7 @@ " 46.469833\n", " 1.211493\n", " 0.661493\n", - " 153.277972\n", + " 153.278065\n", " 319.600245\n", " 325.222500\n", " -10.750280\n", @@ -920,7 +872,7 @@ " 327.2000\n", " 324.5000\n", " 326.8600\n", - " 49338600.0\n", + " 57792915.0\n", " 323.313333\n", " 328.577452\n", " 318.049214\n", @@ -930,7 +882,7 @@ " 50.919143\n", " 1.153997\n", " 0.689436\n", - " 153.292643\n", + " 153.295250\n", " 320.677611\n", " 326.355000\n", " -2.058111\n", @@ -938,9 +890,57 @@ " 325.718525\n", " 1.900614\n", " \n", + " \n", + " 2020-07-23\n", + " 326.4700\n", + " 327.2300\n", + " 321.4800\n", + " 322.9600\n", + " 75737989.0\n", + " 324.014000\n", + " 329.310511\n", + " 318.717489\n", + " 5.296511\n", + " 303.787477\n", + " ...\n", + " 52.999190\n", + " 1.085706\n", + " 0.763560\n", + " 153.317466\n", + " 321.522738\n", + " 323.657500\n", + " -25.800604\n", + " 323.042909\n", + " 325.442430\n", + " 1.309102\n", + " \n", + " \n", + " 2020-07-24\n", + " 320.9500\n", + " 321.9900\n", + " 319.2460\n", + " 320.8800\n", + " 73766597.0\n", + " 323.886400\n", + " 329.077410\n", + " 318.695390\n", + " 5.191010\n", + " 305.041909\n", + " ...\n", + " 48.773943\n", + " 1.027629\n", + " 0.904621\n", + " 153.338694\n", + " 321.846761\n", + " 320.749000\n", + " -38.368580\n", + " 322.932727\n", + " 323.987442\n", + " 0.970050\n", + " \n", " \n", "\n", - "

5214 rows × 157 columns

\n", + "

5216 rows × 157 columns

\n", "" ], "text/plain": [ @@ -952,11 +952,11 @@ "1999-11-04 136.7500 137.3593 135.7656 136.5312 7907500.0 NaN \n", "1999-11-05 138.6250 139.1093 136.7812 137.8750 7431500.0 136.332267 \n", "... ... ... ... ... ... ... \n", - "2020-07-16 319.7900 321.2800 319.0900 320.7900 54433400.0 318.394000 \n", - "2020-07-17 321.8800 322.5700 319.7400 321.7200 64421800.0 319.447333 \n", - "2020-07-20 321.4300 325.1300 320.6200 324.3200 56150200.0 320.673333 \n", - "2020-07-21 326.4500 326.9300 323.9400 325.0100 57245300.0 322.353333 \n", - "2020-07-22 324.6200 327.2000 324.5000 326.8600 49338600.0 323.313333 \n", + "2020-07-20 321.4300 325.1300 320.6200 324.3200 56150230.0 320.673333 \n", + "2020-07-21 326.4500 326.9300 323.9400 325.0100 57245315.0 322.353333 \n", + "2020-07-22 324.6200 327.2000 324.5000 326.8600 57792915.0 323.313333 \n", + "2020-07-23 326.4700 327.2300 321.4800 322.9600 75737989.0 324.014000 \n", + "2020-07-24 320.9500 321.9900 319.2460 320.8800 73766597.0 323.886400 \n", "\n", " ABER_SG_5_15 ABER_XG_5_15 ABER_ATR_5_15 ACCBL_20 ... \\\n", "date ... \n", @@ -966,11 +966,11 @@ "1999-11-04 NaN NaN NaN NaN ... \n", "1999-11-05 NaN NaN NaN NaN ... \n", "... ... ... ... ... ... \n", - "2020-07-16 324.301437 312.486563 5.907437 299.367555 ... \n", - "2020-07-17 325.149608 313.745059 5.702275 299.875050 ... \n", "2020-07-20 326.296123 315.050544 5.622790 300.906776 ... \n", "2020-07-21 327.800604 316.906063 5.447270 301.895656 ... \n", "2020-07-22 328.577452 318.049214 5.264119 302.558926 ... \n", + "2020-07-23 329.310511 318.717489 5.296511 303.787477 ... \n", + "2020-07-24 329.077410 318.695390 5.191010 305.041909 ... \n", "\n", " VAR_30 VTXP_14 VTXM_14 VWAP VWMA_10 WCP \\\n", "date \n", @@ -980,11 +980,11 @@ "1999-11-04 NaN NaN NaN 135.950504 NaN 136.546825 \n", "1999-11-05 NaN NaN NaN 136.393305 NaN 137.910125 \n", "... ... ... ... ... ... ... \n", - "2020-07-16 39.296390 1.142186 0.731933 153.225976 316.788363 320.487500 \n", - "2020-07-17 42.042623 1.200811 0.690749 153.244606 317.735725 321.437500 \n", - "2020-07-20 45.091757 1.223611 0.623952 153.261035 318.474591 323.597500 \n", - "2020-07-21 46.469833 1.211493 0.661493 153.277972 319.600245 325.222500 \n", - "2020-07-22 50.919143 1.153997 0.689436 153.292643 320.677611 326.355000 \n", + "2020-07-20 45.091757 1.223611 0.623952 153.261128 318.474591 323.597500 \n", + "2020-07-21 46.469833 1.211493 0.661493 153.278065 319.600245 325.222500 \n", + "2020-07-22 50.919143 1.153997 0.689436 153.295250 320.677611 326.355000 \n", + "2020-07-23 52.999190 1.085706 0.763560 153.317466 321.522738 323.657500 \n", + "2020-07-24 48.773943 1.027629 0.904621 153.338694 321.846761 320.749000 \n", "\n", " WILLR_14 WMA_10 ZL_EMA_10 Z_30 \n", "date \n", @@ -994,13 +994,13 @@ "1999-11-04 NaN NaN NaN NaN \n", "1999-11-05 NaN NaN NaN NaN \n", "... ... ... ... ... \n", - "2020-07-16 -9.332227 317.993091 320.251663 1.318671 \n", - "2020-07-17 -5.474907 318.894727 321.769543 1.365046 \n", "2020-07-20 -3.801032 320.096545 323.215081 1.680556 \n", "2020-07-21 -10.750280 321.291636 324.115975 1.747819 \n", "2020-07-22 -2.058111 322.618909 325.718525 1.900614 \n", + "2020-07-23 -25.800604 323.042909 325.442430 1.309102 \n", + "2020-07-24 -38.368580 322.932727 323.987442 0.970050 \n", "\n", - "[5214 rows x 157 columns]" + "[5216 rows x 157 columns]" ] }, "execution_count": 13, @@ -1041,7 +1041,7 @@ { "data": { "text/plain": [ - "Strategy(name='A', ta=[{'kind': 'sma', 'length': 50}, {'kind': 'sma', 'length': 200}], description=None, created='07/22/2020, 17:02:37', last_run=None, run_time=None)" + "Strategy(name='A', ta=[{'kind': 'sma', 'length': 50}, {'kind': 'sma', 'length': 200}], description=None, created='07/25/2020, 11:24:19', last_run=None, run_time=None)" ] }, "execution_count": 14, @@ -1065,8 +1065,7 @@ "output_type": "stream", "text": [ "\n", - "[i] Loaded['D']: IWM_D.csv\n", - "[i] Set 'df.ta.mp = True' to enable multiprocessing. This computer has 4 cores. Default: False\n" + "[i] Loaded['D']: IWM_D.csv\n" ] }, { @@ -1113,7 +1112,7 @@ " \n", " 2000-05-26\n", " 91.06\n", - " 91.44\n", + " 91.440\n", " 90.63\n", " 91.44\n", " 37400.0\n", @@ -1123,7 +1122,7 @@ " \n", " 2000-05-30\n", " 92.75\n", - " 94.81\n", + " 94.810\n", " 92.75\n", " 94.81\n", " 28800.0\n", @@ -1133,7 +1132,7 @@ " \n", " 2000-05-31\n", " 95.13\n", - " 96.38\n", + " 96.380\n", " 95.13\n", " 95.75\n", " 18000.0\n", @@ -1143,7 +1142,7 @@ " \n", " 2000-06-01\n", " 97.11\n", - " 97.31\n", + " 97.310\n", " 97.11\n", " 97.31\n", " 3500.0\n", @@ -1153,7 +1152,7 @@ " \n", " 2000-06-02\n", " 101.70\n", - " 102.40\n", + " 102.400\n", " 101.70\n", " 102.40\n", " 14700.0\n", @@ -1171,76 +1170,76 @@ " ...\n", " \n", " \n", - " 2020-07-16\n", - " 146.11\n", - " 146.67\n", - " 144.88\n", - " 146.16\n", - " 30386200.0\n", - " 138.9184\n", - " 145.95140\n", - " \n", - " \n", - " 2020-07-17\n", - " 146.68\n", - " 147.59\n", - " 145.51\n", - " 146.59\n", - " 20632700.0\n", - " 139.3358\n", - " 145.94250\n", - " \n", - " \n", " 2020-07-20\n", " 146.12\n", - " 146.85\n", + " 146.850\n", " 145.15\n", " 145.96\n", - " 19581700.0\n", + " 19581689.0\n", " 139.7062\n", " 145.93605\n", " \n", " \n", " 2020-07-21\n", " 147.47\n", - " 149.16\n", + " 149.160\n", " 147.20\n", " 148.03\n", - " 24467100.0\n", + " 24467065.0\n", " 140.0196\n", " 145.93750\n", " \n", " \n", " 2020-07-22\n", " 147.09\n", - " 148.67\n", + " 148.670\n", " 147.03\n", " 148.11\n", - " 19080800.0\n", + " 24424808.0\n", " 140.3478\n", " 145.93235\n", " \n", + " \n", + " 2020-07-23\n", + " 147.98\n", + " 150.200\n", + " 146.70\n", + " 148.26\n", + " 21704889.0\n", + " 140.7736\n", + " 145.92925\n", + " \n", + " \n", + " 2020-07-24\n", + " 147.29\n", + " 147.665\n", + " 145.56\n", + " 146.08\n", + " 20015547.0\n", + " 141.2408\n", + " 145.92735\n", + " \n", " \n", "\n", - "

5070 rows × 7 columns

\n", + "

5072 rows × 7 columns

\n", "" ], "text/plain": [ - " open high low close volume SMA_50 SMA_200\n", - "date \n", - "2000-05-26 91.06 91.44 90.63 91.44 37400.0 NaN NaN\n", - "2000-05-30 92.75 94.81 92.75 94.81 28800.0 NaN NaN\n", - "2000-05-31 95.13 96.38 95.13 95.75 18000.0 NaN NaN\n", - "2000-06-01 97.11 97.31 97.11 97.31 3500.0 NaN NaN\n", - "2000-06-02 101.70 102.40 101.70 102.40 14700.0 NaN NaN\n", - "... ... ... ... ... ... ... ...\n", - "2020-07-16 146.11 146.67 144.88 146.16 30386200.0 138.9184 145.95140\n", - "2020-07-17 146.68 147.59 145.51 146.59 20632700.0 139.3358 145.94250\n", - "2020-07-20 146.12 146.85 145.15 145.96 19581700.0 139.7062 145.93605\n", - "2020-07-21 147.47 149.16 147.20 148.03 24467100.0 140.0196 145.93750\n", - "2020-07-22 147.09 148.67 147.03 148.11 19080800.0 140.3478 145.93235\n", + " open high low close volume SMA_50 SMA_200\n", + "date \n", + "2000-05-26 91.06 91.440 90.63 91.44 37400.0 NaN NaN\n", + "2000-05-30 92.75 94.810 92.75 94.81 28800.0 NaN NaN\n", + "2000-05-31 95.13 96.380 95.13 95.75 18000.0 NaN NaN\n", + "2000-06-01 97.11 97.310 97.11 97.31 3500.0 NaN NaN\n", + "2000-06-02 101.70 102.400 101.70 102.40 14700.0 NaN NaN\n", + "... ... ... ... ... ... ... ...\n", + "2020-07-20 146.12 146.850 145.15 145.96 19581689.0 139.7062 145.93605\n", + "2020-07-21 147.47 149.160 147.20 148.03 24467065.0 140.0196 145.93750\n", + "2020-07-22 147.09 148.670 147.03 148.11 24424808.0 140.3478 145.93235\n", + "2020-07-23 147.98 150.200 146.70 148.26 21704889.0 140.7736 145.92925\n", + "2020-07-24 147.29 147.665 145.56 146.08 20015547.0 141.2408 145.92735\n", "\n", - "[5070 rows x 7 columns]" + "[5072 rows x 7 columns]" ] }, "execution_count": 15, @@ -1267,7 +1266,7 @@ { "data": { "text/plain": [ - "Strategy(name='B', ta=[{'kind': 'ema', 'length': 8}, {'kind': 'ema', 'length': 21}, {'kind': 'log_return', 'cumulative': True}, {'kind': 'rsi'}, {'kind': 'supertrend'}], description=None, created='07/22/2020, 17:02:37', last_run=None, run_time=None)" + "Strategy(name='B', ta=[{'kind': 'ema', 'length': 8}, {'kind': 'ema', 'length': 21}, {'kind': 'log_return', 'cumulative': True}, {'kind': 'rsi'}, {'kind': 'supertrend'}], description=None, created='07/25/2020, 11:24:19', last_run=None, run_time=None)" ] }, "execution_count": 16, @@ -1291,8 +1290,7 @@ "output_type": "stream", "text": [ "\n", - "[i] Loaded['D']: SPY_D.csv\n", - "[i] Set 'df.ta.mp = True' to enable multiprocessing. This computer has 4 cores. Default: False\n" + "[i] Loaded['D']: SPY_D.csv\n" ] }, { @@ -1390,7 +1388,7 @@ " NaN\n", " NaN\n", " -0.000461\n", - " 6.263520\n", + " 50.185503\n", " NaN\n", " 1\n", " NaN\n", @@ -1406,7 +1404,7 @@ " NaN\n", " NaN\n", " 0.007120\n", - " 12.913259\n", + " 69.153995\n", " NaN\n", " 1\n", " NaN\n", @@ -1422,7 +1420,7 @@ " NaN\n", " NaN\n", " 0.016915\n", - " 20.761745\n", + " 79.896816\n", " NaN\n", " 1\n", " NaN\n", @@ -1445,48 +1443,16 @@ " ...\n", " \n", " \n", - " 2020-07-16\n", - " 319.7900\n", - " 321.2800\n", - " 319.0900\n", - " 320.7900\n", - " 54433400.0\n", - " 317.563448\n", - " 313.395304\n", - " 0.861354\n", - " 60.141122\n", - " 321.864382\n", - " -1\n", - " NaN\n", - " 321.864382\n", - " \n", - " \n", - " 2020-07-17\n", - " 321.8800\n", - " 322.5700\n", - " 319.7400\n", - " 321.7200\n", - " 64421800.0\n", - " 318.487126\n", - " 314.152095\n", - " 0.864249\n", - " 60.911280\n", - " 321.864382\n", - " -1\n", - " NaN\n", - " 321.864382\n", - " \n", - " \n", " 2020-07-20\n", " 321.4300\n", " 325.1300\n", " 320.6200\n", " 324.3200\n", - " 56150200.0\n", + " 56150230.0\n", " 319.783320\n", " 315.076450\n", " 0.872298\n", - " 63.049858\n", + " 63.569724\n", " 307.890439\n", " 1\n", " 307.890439\n", @@ -1498,11 +1464,11 @@ " 326.9300\n", " 323.9400\n", " 325.0100\n", - " 57245300.0\n", + " 57245315.0\n", " 320.944805\n", " 315.979500\n", " 0.874423\n", - " 63.615869\n", + " 64.179426\n", " 311.309662\n", " 1\n", " 311.309662\n", @@ -1514,11 +1480,43 @@ " 327.2000\n", " 324.5000\n", " 326.8600\n", - " 49338600.0\n", + " 57792915.0\n", " 322.259293\n", " 316.968636\n", " 0.880099\n", - " 65.149441\n", + " 65.830627\n", + " 312.585425\n", + " 1\n", + " 312.585425\n", + " NaN\n", + " \n", + " \n", + " 2020-07-23\n", + " 326.4700\n", + " 327.2300\n", + " 321.4800\n", + " 322.9600\n", + " 75737989.0\n", + " 322.415005\n", + " 317.513306\n", + " 0.868096\n", + " 59.594031\n", + " 312.585425\n", + " 1\n", + " 312.585425\n", + " NaN\n", + " \n", + " \n", + " 2020-07-24\n", + " 320.9500\n", + " 321.9900\n", + " 319.2460\n", + " 320.8800\n", + " 73766597.0\n", + " 322.073893\n", + " 317.819369\n", + " 0.861634\n", + " 56.518677\n", " 312.585425\n", " 1\n", " 312.585425\n", @@ -1526,7 +1524,7 @@ " \n", " \n", "\n", - "

5214 rows × 13 columns

\n", + "

5216 rows × 13 columns

\n", "" ], "text/plain": [ @@ -1538,25 +1536,25 @@ "1999-11-04 136.7500 137.3593 135.7656 136.5312 7907500.0 NaN \n", "1999-11-05 138.6250 139.1093 136.7812 137.8750 7431500.0 NaN \n", "... ... ... ... ... ... ... \n", - "2020-07-16 319.7900 321.2800 319.0900 320.7900 54433400.0 317.563448 \n", - "2020-07-17 321.8800 322.5700 319.7400 321.7200 64421800.0 318.487126 \n", - "2020-07-20 321.4300 325.1300 320.6200 324.3200 56150200.0 319.783320 \n", - "2020-07-21 326.4500 326.9300 323.9400 325.0100 57245300.0 320.944805 \n", - "2020-07-22 324.6200 327.2000 324.5000 326.8600 49338600.0 322.259293 \n", + "2020-07-20 321.4300 325.1300 320.6200 324.3200 56150230.0 319.783320 \n", + "2020-07-21 326.4500 326.9300 323.9400 325.0100 57245315.0 320.944805 \n", + "2020-07-22 324.6200 327.2000 324.5000 326.8600 57792915.0 322.259293 \n", + "2020-07-23 326.4700 327.2300 321.4800 322.9600 75737989.0 322.415005 \n", + "2020-07-24 320.9500 321.9900 319.2460 320.8800 73766597.0 322.073893 \n", "\n", " EMA_21 CUMLOGRET_1 RSI_14 SUPERT_7_3.0 SUPERTd_7_3.0 \\\n", "date \n", "1999-11-01 NaN NaN NaN 0.000000 1 \n", "1999-11-02 NaN -0.007172 0.000000 NaN 1 \n", - "1999-11-03 NaN -0.000461 6.263520 NaN 1 \n", - "1999-11-04 NaN 0.007120 12.913259 NaN 1 \n", - "1999-11-05 NaN 0.016915 20.761745 NaN 1 \n", + "1999-11-03 NaN -0.000461 50.185503 NaN 1 \n", + "1999-11-04 NaN 0.007120 69.153995 NaN 1 \n", + "1999-11-05 NaN 0.016915 79.896816 NaN 1 \n", "... ... ... ... ... ... \n", - "2020-07-16 313.395304 0.861354 60.141122 321.864382 -1 \n", - "2020-07-17 314.152095 0.864249 60.911280 321.864382 -1 \n", - "2020-07-20 315.076450 0.872298 63.049858 307.890439 1 \n", - "2020-07-21 315.979500 0.874423 63.615869 311.309662 1 \n", - "2020-07-22 316.968636 0.880099 65.149441 312.585425 1 \n", + "2020-07-20 315.076450 0.872298 63.569724 307.890439 1 \n", + "2020-07-21 315.979500 0.874423 64.179426 311.309662 1 \n", + "2020-07-22 316.968636 0.880099 65.830627 312.585425 1 \n", + "2020-07-23 317.513306 0.868096 59.594031 312.585425 1 \n", + "2020-07-24 317.819369 0.861634 56.518677 312.585425 1 \n", "\n", " SUPERTl_7_3.0 SUPERTs_7_3.0 \n", "date \n", @@ -1566,13 +1564,13 @@ "1999-11-04 NaN NaN \n", "1999-11-05 NaN NaN \n", "... ... ... \n", - "2020-07-16 NaN 321.864382 \n", - "2020-07-17 NaN 321.864382 \n", "2020-07-20 307.890439 NaN \n", "2020-07-21 311.309662 NaN \n", "2020-07-22 312.585425 NaN \n", + "2020-07-23 312.585425 NaN \n", + "2020-07-24 312.585425 NaN \n", "\n", - "[5214 rows x 13 columns]" + "[5216 rows x 13 columns]" ] }, "execution_count": 17, @@ -1599,7 +1597,7 @@ { "data": { "text/plain": [ - "Strategy(name='Runtime Failure', ta=[{'kind': 'percet_return'}], description=None, created='07/22/2020, 17:02:37', last_run=None, run_time=None)" + "Strategy(name='Runtime Failure', ta=[{'kind': 'percet_return'}], description=None, created='07/25/2020, 11:24:19', last_run=None, run_time=None)" ] }, "execution_count": 18, @@ -1666,7 +1664,7 @@ { "data": { "text/plain": [ - "Strategy(name='Volume MAs and Price MA chain', ta=[{'kind': 'ema', 'close': 'volume', 'length': 10, 'prefix': 'VOLUME'}, {'kind': 'sma', 'close': 'volume', 'length': 20, 'prefix': 'VOLUME'}, {'kind': 'ema', 'length': 5}, {'kind': 'linreg', 'close': 'EMA_5', 'length': 8, 'prefix': 'EMA_5'}], description=None, created='07/22/2020, 17:02:37', last_run=None, run_time=None)" + "Strategy(name='Volume MAs and Price MA chain', ta=[{'kind': 'ema', 'close': 'volume', 'length': 10, 'prefix': 'VOLUME'}, {'kind': 'sma', 'close': 'volume', 'length': 20, 'prefix': 'VOLUME'}, {'kind': 'ema', 'length': 5}, {'kind': 'linreg', 'close': 'EMA_5', 'length': 8, 'prefix': 'EMA_5'}], description=None, created='07/25/2020, 11:24:19', last_run=None, run_time=None)" ] }, "execution_count": 20, @@ -1840,38 +1838,14 @@ " ...\n", " \n", " \n", - " 2020-07-16\n", - " 319.7900\n", - " 321.2800\n", - " 319.0900\n", - " 320.7900\n", - " 54433400.0\n", - " 7.880249e+07\n", - " 85750820.85\n", - " 319.046435\n", - " 317.729875\n", - " \n", - " \n", - " 2020-07-17\n", - " 321.8800\n", - " 322.5700\n", - " 319.7400\n", - " 321.7200\n", - " 64421800.0\n", - " 7.618782e+07\n", - " 84954118.65\n", - " 319.937624\n", - " 318.784441\n", - " \n", - " \n", " 2020-07-20\n", " 321.4300\n", " 325.1300\n", " 320.6200\n", " 324.3200\n", - " 56150200.0\n", - " 7.254462e+07\n", - " 81001061.40\n", + " 56150230.0\n", + " 7.254859e+07\n", + " 81019145.80\n", " 321.398416\n", " 320.058000\n", " \n", @@ -1881,9 +1855,9 @@ " 326.9300\n", " 323.9400\n", " 325.0100\n", - " 57245300.0\n", - " 6.976292e+07\n", - " 80162965.80\n", + " 57245315.0\n", + " 6.976618e+07\n", + " 80181050.95\n", " 322.602277\n", " 321.307000\n", " \n", @@ -1893,15 +1867,39 @@ " 327.2000\n", " 324.5000\n", " 326.8600\n", - " 49338600.0\n", - " 6.604941e+07\n", - " 79226550.80\n", + " 57792915.0\n", + " 6.758922e+07\n", + " 79667351.70\n", " 324.021518\n", " 322.687127\n", " \n", + " \n", + " 2020-07-23\n", + " 326.4700\n", + " 327.2300\n", + " 321.4800\n", + " 322.9600\n", + " 75737989.0\n", + " 6.907082e+07\n", + " 76850881.55\n", + " 323.667679\n", + " 323.406458\n", + " \n", + " \n", + " 2020-07-24\n", + " 320.9500\n", + " 321.9900\n", + " 319.2460\n", + " 320.8800\n", + " 73766597.0\n", + " 6.992459e+07\n", + " 76090907.45\n", + " 322.738452\n", + " 323.487321\n", + " \n", " \n", "\n", - "

5214 rows × 9 columns

\n", + "

5216 rows × 9 columns

\n", "" ], "text/plain": [ @@ -1913,11 +1911,11 @@ "1999-11-04 136.7500 137.3593 135.7656 136.5312 7907500.0 NaN \n", "1999-11-05 138.6250 139.1093 136.7812 137.8750 7431500.0 NaN \n", "... ... ... ... ... ... ... \n", - "2020-07-16 319.7900 321.2800 319.0900 320.7900 54433400.0 7.880249e+07 \n", - "2020-07-17 321.8800 322.5700 319.7400 321.7200 64421800.0 7.618782e+07 \n", - "2020-07-20 321.4300 325.1300 320.6200 324.3200 56150200.0 7.254462e+07 \n", - "2020-07-21 326.4500 326.9300 323.9400 325.0100 57245300.0 6.976292e+07 \n", - "2020-07-22 324.6200 327.2000 324.5000 326.8600 49338600.0 6.604941e+07 \n", + "2020-07-20 321.4300 325.1300 320.6200 324.3200 56150230.0 7.254859e+07 \n", + "2020-07-21 326.4500 326.9300 323.9400 325.0100 57245315.0 6.976618e+07 \n", + "2020-07-22 324.6200 327.2000 324.5000 326.8600 57792915.0 6.758922e+07 \n", + "2020-07-23 326.4700 327.2300 321.4800 322.9600 75737989.0 6.907082e+07 \n", + "2020-07-24 320.9500 321.9900 319.2460 320.8800 73766597.0 6.992459e+07 \n", "\n", " VOLUME_SMA_20 EMA_5 EMA_5_LR_8 \n", "date \n", @@ -1927,13 +1925,13 @@ "1999-11-04 NaN NaN NaN \n", "1999-11-05 NaN 136.012480 NaN \n", "... ... ... ... \n", - "2020-07-16 85750820.85 319.046435 317.729875 \n", - "2020-07-17 84954118.65 319.937624 318.784441 \n", - "2020-07-20 81001061.40 321.398416 320.058000 \n", - "2020-07-21 80162965.80 322.602277 321.307000 \n", - "2020-07-22 79226550.80 324.021518 322.687127 \n", + "2020-07-20 81019145.80 321.398416 320.058000 \n", + "2020-07-21 80181050.95 322.602277 321.307000 \n", + "2020-07-22 79667351.70 324.021518 322.687127 \n", + "2020-07-23 76850881.55 323.667679 323.406458 \n", + "2020-07-24 76090907.45 322.738452 323.487321 \n", "\n", - "[5214 rows x 9 columns]" + "[5216 rows x 9 columns]" ] }, "execution_count": 22, @@ -1968,7 +1966,7 @@ { "data": { "text/plain": [ - "Strategy(name='MACD BBands', ta=[{'kind': 'macd'}, {'kind': 'bbands', 'close': 'MACD_12_26_9', 'length': 20, 'prefix': 'MACD'}], description='BBANDS_20 applied to MACD', created='07/22/2020, 17:02:37', last_run=None, run_time=None)" + "Strategy(name='MACD BBands', ta=[{'kind': 'macd'}, {'kind': 'bbands', 'close': 'MACD_12_26_9', 'length': 20, 'prefix': 'MACD'}], description='BBANDS_20 applied to MACD', created='07/25/2020, 11:24:19', last_run=None, run_time=None)" ] }, "execution_count": 23, @@ -2157,40 +2155,12 @@ " ...\n", " \n", " \n", - " 2020-07-16\n", - " 319.7900\n", - " 321.2800\n", - " 319.0900\n", - " 320.7900\n", - " 54433400.0\n", - " 3.975091\n", - " 0.595775\n", - " 3.379316\n", - " 1.155506\n", - " 3.237593\n", - " 5.319681\n", - " \n", - " \n", - " 2020-07-17\n", - " 321.8800\n", - " 322.5700\n", - " 319.7400\n", - " 321.7200\n", - " 64421800.0\n", - " 4.136274\n", - " 0.605566\n", - " 3.530708\n", - " 1.297995\n", - " 3.175551\n", - " 5.053107\n", - " \n", - " \n", " 2020-07-20\n", " 321.4300\n", " 325.1300\n", " 320.6200\n", " 324.3200\n", - " 56150200.0\n", + " 56150230.0\n", " 4.422827\n", " 0.713695\n", " 3.709131\n", @@ -2204,7 +2174,7 @@ " 326.9300\n", " 323.9400\n", " 325.0100\n", - " 57245300.0\n", + " 57245315.0\n", " 4.651974\n", " 0.754274\n", " 3.897700\n", @@ -2218,7 +2188,7 @@ " 327.2000\n", " 324.5000\n", " 326.8600\n", - " 49338600.0\n", + " 57792915.0\n", " 4.926070\n", " 0.822696\n", " 4.103374\n", @@ -2226,9 +2196,37 @@ " 3.183563\n", " 5.088035\n", " \n", + " \n", + " 2020-07-23\n", + " 326.4700\n", + " 327.2300\n", + " 321.4800\n", + " 322.9600\n", + " 75737989.0\n", + " 4.773569\n", + " 0.536156\n", + " 4.237413\n", + " 1.215602\n", + " 3.243110\n", + " 5.270617\n", + " \n", + " \n", + " 2020-07-24\n", + " 320.9500\n", + " 321.9900\n", + " 319.2460\n", + " 320.8800\n", + " 73766597.0\n", + " 4.433763\n", + " 0.157080\n", + " 4.276683\n", + " 1.211360\n", + " 3.306770\n", + " 5.402179\n", + " \n", " \n", "\n", - "

5214 rows × 11 columns

\n", + "

5216 rows × 11 columns

\n", "" ], "text/plain": [ @@ -2240,11 +2238,11 @@ "1999-11-04 136.7500 137.3593 135.7656 136.5312 7907500.0 NaN \n", "1999-11-05 138.6250 139.1093 136.7812 137.8750 7431500.0 NaN \n", "... ... ... ... ... ... ... \n", - "2020-07-16 319.7900 321.2800 319.0900 320.7900 54433400.0 3.975091 \n", - "2020-07-17 321.8800 322.5700 319.7400 321.7200 64421800.0 4.136274 \n", - "2020-07-20 321.4300 325.1300 320.6200 324.3200 56150200.0 4.422827 \n", - "2020-07-21 326.4500 326.9300 323.9400 325.0100 57245300.0 4.651974 \n", - "2020-07-22 324.6200 327.2000 324.5000 326.8600 49338600.0 4.926070 \n", + "2020-07-20 321.4300 325.1300 320.6200 324.3200 56150230.0 4.422827 \n", + "2020-07-21 326.4500 326.9300 323.9400 325.0100 57245315.0 4.651974 \n", + "2020-07-22 324.6200 327.2000 324.5000 326.8600 57792915.0 4.926070 \n", + "2020-07-23 326.4700 327.2300 321.4800 322.9600 75737989.0 4.773569 \n", + "2020-07-24 320.9500 321.9900 319.2460 320.8800 73766597.0 4.433763 \n", "\n", " MACDh_12_26_9 MACDs_12_26_9 MACD_BBL_20_2.0 MACD_BBM_20_2.0 \\\n", "date \n", @@ -2254,11 +2252,11 @@ "1999-11-04 NaN NaN NaN NaN \n", "1999-11-05 NaN NaN NaN NaN \n", "... ... ... ... ... \n", - "2020-07-16 0.595775 3.379316 1.155506 3.237593 \n", - "2020-07-17 0.605566 3.530708 1.297995 3.175551 \n", "2020-07-20 0.713695 3.709131 1.351168 3.153296 \n", "2020-07-21 0.754274 3.897700 1.341550 3.157320 \n", "2020-07-22 0.822696 4.103374 1.279092 3.183563 \n", + "2020-07-23 0.536156 4.237413 1.215602 3.243110 \n", + "2020-07-24 0.157080 4.276683 1.211360 3.306770 \n", "\n", " MACD_BBU_20_2.0 \n", "date \n", @@ -2268,13 +2266,13 @@ "1999-11-04 NaN \n", "1999-11-05 NaN \n", "... ... \n", - "2020-07-16 5.319681 \n", - "2020-07-17 5.053107 \n", "2020-07-20 4.955423 \n", "2020-07-21 4.973090 \n", "2020-07-22 5.088035 \n", + "2020-07-23 5.270617 \n", + "2020-07-24 5.402179 \n", "\n", - "[5214 rows x 11 columns]" + "[5216 rows x 11 columns]" ] }, "execution_count": 25, @@ -2316,7 +2314,7 @@ { "data": { "text/plain": [ - "Strategy(name='Momo, Bands and SMAs and Cumulative Log Returns', ta=[{'kind': 'sma', 'length': 50}, {'kind': 'sma', 'length': 200}, {'kind': 'bbands', 'length': 20}, {'kind': 'macd'}, {'kind': 'rsi'}, {'kind': 'log_return', 'cumulative': True}, {'kind': 'sma', 'close': 'CUMLOGRET_1', 'length': 5, 'suffix': 'CUMLOGRET'}], description='MACD and RSI Momo with BBANDS and SMAs 50 & 200 and Cumulative Log Returns', created='07/22/2020, 17:02:37', last_run=None, run_time=None)" + "Strategy(name='Momo, Bands and SMAs and Cumulative Log Returns', ta=[{'kind': 'sma', 'length': 50}, {'kind': 'sma', 'length': 200}, {'kind': 'bbands', 'length': 20}, {'kind': 'macd'}, {'kind': 'rsi'}, {'kind': 'log_return', 'cumulative': True}, {'kind': 'sma', 'close': 'CUMLOGRET_1', 'length': 5, 'suffix': 'CUMLOGRET'}], description='MACD and RSI Momo with BBANDS and SMAs 50 & 200 and Cumulative Log Returns', created='07/25/2020, 11:24:19', last_run=None, run_time=None)" ] }, "execution_count": 26, @@ -2375,7 +2373,7 @@ "text": [ "\n", "[i] Loaded['D']: SPY_D.csv\n", - "[i] Runtime: 31.6960 ms (0.0317 s)\n" + "[i] Runtime: 34.4336 ms (0.0344 s)\n" ] }, { @@ -2502,7 +2500,7 @@ " NaN\n", " NaN\n", " NaN\n", - " 6.263520\n", + " 50.185503\n", " -0.000461\n", " NaN\n", " 0\n", @@ -2524,7 +2522,7 @@ " NaN\n", " NaN\n", " NaN\n", - " 12.913259\n", + " 69.153995\n", " 0.007120\n", " NaN\n", " 0\n", @@ -2546,7 +2544,7 @@ " NaN\n", " NaN\n", " NaN\n", - " 20.761745\n", + " 79.896816\n", " 0.016915\n", " NaN\n", " 0\n", @@ -2568,7 +2566,7 @@ " NaN\n", " NaN\n", " NaN\n", - " 21.467126\n", + " 80.574537\n", " 0.017821\n", " 0.006845\n", " 0\n", @@ -2590,7 +2588,7 @@ " NaN\n", " NaN\n", " NaN\n", - " 19.534082\n", + " 58.528352\n", " 0.008379\n", " 0.009955\n", " 0\n", @@ -2612,7 +2610,7 @@ " NaN\n", " NaN\n", " NaN\n", - " 25.186415\n", + " 66.303684\n", " 0.015780\n", " 0.013203\n", " 0\n", @@ -2634,7 +2632,7 @@ " NaN\n", " NaN\n", " 0.0\n", - " 29.281003\n", + " 70.833962\n", " 0.021438\n", " 0.016066\n", " 0\n", @@ -2656,7 +2654,7 @@ " NaN\n", " NaN\n", " 0.0\n", - " 35.346637\n", + " 76.319408\n", " 0.030422\n", " 0.018768\n", " 0\n", @@ -2678,7 +2676,7 @@ " NaN\n", " NaN\n", " 0.0\n", - " 36.869425\n", + " 77.514804\n", " 0.032767\n", " 0.021757\n", " 0\n", @@ -2700,7 +2698,7 @@ " NaN\n", " NaN\n", " 0.0\n", - " 42.089239\n", + " 81.170904\n", " 0.041099\n", " 0.028301\n", " 0\n", @@ -2722,7 +2720,7 @@ " NaN\n", " NaN\n", " 0.0\n", - " 43.685627\n", + " 82.169980\n", " 0.043750\n", " 0.033895\n", " 0\n", @@ -2744,7 +2742,7 @@ " NaN\n", " NaN\n", " 0.0\n", - " 47.797173\n", + " 84.527630\n", " 0.050786\n", " 0.039765\n", " 0\n", @@ -2766,7 +2764,7 @@ " NaN\n", " NaN\n", " 0.0\n", - " 47.334329\n", + " 83.049344\n", " 0.049909\n", " 0.043662\n", " 0\n", @@ -2788,7 +2786,7 @@ " NaN\n", " NaN\n", " 0.0\n", - " 47.211675\n", + " 82.659517\n", " 0.049690\n", " 0.047047\n", " 0\n", @@ -2810,7 +2808,7 @@ " NaN\n", " NaN\n", " 0.0\n", - " 42.499547\n", + " 68.775385\n", " 0.040877\n", " 0.047002\n", " 0\n", @@ -2832,7 +2830,7 @@ " NaN\n", " NaN\n", " 0.0\n", - " 45.966480\n", + " 71.832489\n", " 0.046174\n", " 0.047487\n", " 0\n", @@ -2854,7 +2852,7 @@ " NaN\n", " NaN\n", " 0.0\n", - " 43.955324\n", + " 66.840920\n", " 0.042425\n", " 0.045815\n", " 0\n", @@ -2876,7 +2874,7 @@ " NaN\n", " NaN\n", " 0.0\n", - " 42.097781\n", + " 62.442534\n", " 0.038884\n", " 0.043610\n", " 0\n", @@ -2938,24 +2936,24 @@ "date \n", "1999-11-01 NaN NaN NaN NaN \n", "1999-11-02 NaN NaN 0.000000 -0.007172 \n", - "1999-11-03 NaN NaN 6.263520 -0.000461 \n", - "1999-11-04 NaN NaN 12.913259 0.007120 \n", - "1999-11-05 NaN NaN 20.761745 0.016915 \n", - "1999-11-08 NaN NaN 21.467126 0.017821 \n", - "1999-11-09 NaN NaN 19.534082 0.008379 \n", - "1999-11-10 NaN NaN 25.186415 0.015780 \n", - "1999-11-11 NaN 0.0 29.281003 0.021438 \n", - "1999-11-12 NaN 0.0 35.346637 0.030422 \n", - "1999-11-15 NaN 0.0 36.869425 0.032767 \n", - "1999-11-16 NaN 0.0 42.089239 0.041099 \n", - "1999-11-17 NaN 0.0 43.685627 0.043750 \n", - "1999-11-18 NaN 0.0 47.797173 0.050786 \n", - "1999-11-19 NaN 0.0 47.334329 0.049909 \n", - "1999-11-22 NaN 0.0 47.211675 0.049690 \n", - "1999-11-23 NaN 0.0 42.499547 0.040877 \n", - "1999-11-24 NaN 0.0 45.966480 0.046174 \n", - "1999-11-26 NaN 0.0 43.955324 0.042425 \n", - "1999-11-29 NaN 0.0 42.097781 0.038884 \n", + "1999-11-03 NaN NaN 50.185503 -0.000461 \n", + "1999-11-04 NaN NaN 69.153995 0.007120 \n", + "1999-11-05 NaN NaN 79.896816 0.016915 \n", + "1999-11-08 NaN NaN 80.574537 0.017821 \n", + "1999-11-09 NaN NaN 58.528352 0.008379 \n", + "1999-11-10 NaN NaN 66.303684 0.015780 \n", + "1999-11-11 NaN 0.0 70.833962 0.021438 \n", + "1999-11-12 NaN 0.0 76.319408 0.030422 \n", + "1999-11-15 NaN 0.0 77.514804 0.032767 \n", + "1999-11-16 NaN 0.0 81.170904 0.041099 \n", + "1999-11-17 NaN 0.0 82.169980 0.043750 \n", + "1999-11-18 NaN 0.0 84.527630 0.050786 \n", + "1999-11-19 NaN 0.0 83.049344 0.049909 \n", + "1999-11-22 NaN 0.0 82.659517 0.049690 \n", + "1999-11-23 NaN 0.0 68.775385 0.040877 \n", + "1999-11-24 NaN 0.0 71.832489 0.046174 \n", + "1999-11-26 NaN 0.0 66.840920 0.042425 \n", + "1999-11-29 NaN 0.0 62.442534 0.038884 \n", "\n", " SMA_5_CUMLOGRET 0 30 70 \n", "date \n", diff --git a/pandas_ta/momentum/rsi.py b/pandas_ta/momentum/rsi.py index 87cbea1..777b128 100644 --- a/pandas_ta/momentum/rsi.py +++ b/pandas_ta/momentum/rsi.py @@ -1,5 +1,6 @@ # -*- coding: utf-8 -*- from pandas import DataFrame, concat +from pandas_ta.overlap import rma from pandas_ta.utils import get_drift, get_offset, verify_series, signals def rsi(close, length=None, scalar=None, drift=None, offset=None, **kwargs): @@ -18,10 +19,10 @@ def rsi(close, length=None, scalar=None, drift=None, offset=None, **kwargs): positive[positive < 0] = 0 # Make negatives 0 for the postive series negative[negative > 0] = 0 # Make postives 0 for the negative series - positive_avg = positive.ewm(com=length, adjust=False).mean() - negative_avg = negative.ewm(com=length, adjust=False).mean().abs() + positive_avg = rma(positive, length=length) + negative_avg = rma(negative, length=length) - rsi = scalar * positive_avg / (positive_avg + negative_avg) + rsi = scalar * positive_avg / (positive_avg + negative_avg.abs()) # Offset if offset != 0: