mirror of
https://github.com/wassname/pandas-ta.git
synced 2026-08-03 13:00:43 +08:00
1183 lines
40 KiB
Plaintext
1183 lines
40 KiB
Plaintext
{
|
|
"cells": [
|
|
{
|
|
"cell_type": "markdown",
|
|
"id": "3dbbe3ae-2e85-46a1-b4c7-5bc942978bb6",
|
|
"metadata": {},
|
|
"source": [
|
|
"# Indicator Performance Check\n",
|
|
"\n",
|
|
"This Notebook shows the **Indicator Performance** with and without TA Lib\n",
|
|
"* Results will vary if ```vectorbt``` or ```numba``` is installed.\n",
|
|
"* These values are based on a M1 Macbook with 16GB Memory."
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 1,
|
|
"id": "63c0934c-9bb3-4a3e-a65a-9f142aa346f9",
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"Package Versions:\n",
|
|
"Pandas TA v0.3.48b0\n",
|
|
"Numba v0.55.1\n",
|
|
"talib v0.4.21\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"from importlib.util import find_spec\n",
|
|
"\n",
|
|
"from numpy import version as numpy_version\n",
|
|
"from pandas import concat, IndexSlice\n",
|
|
"from pandas import IndexSlice as idx\n",
|
|
"import pandas_ta as ta\n",
|
|
"\n",
|
|
"print(\"Package Versions:\")\n",
|
|
"print(f\"Pandas TA v{ta.version}\")\n",
|
|
"\n",
|
|
"has_numba = find_spec(\"numba\") is not None\n",
|
|
"if has_numba:\n",
|
|
" from numba import __version__ as numba_version\n",
|
|
" print(f\"Numba v{numba_version}\")\n",
|
|
" \n",
|
|
"if find_spec(\"talib\") is not None:\n",
|
|
" from talib import __version__ as tal_version\n",
|
|
" print(f\"talib v{tal_version}\")\n",
|
|
"\n",
|
|
"from pandas import read_csv\n",
|
|
"from pandas import DatetimeIndex as dti\n",
|
|
"%matplotlib inline"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"id": "68531949-cca4-47f5-89e7-00d77855e8a3",
|
|
"metadata": {},
|
|
"source": [
|
|
"### Fetch Sample Data"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 2,
|
|
"id": "efe05268-b2a1-4beb-9b7d-280e374d8d50",
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"[+] yf | SPY(1260, 7): 3615.7968 ms (3.6158 s)\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"_df = ta.df.ta.ticker(\"SPY\", period=\"5y\", timed=True)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 3,
|
|
"id": "3f7ad492-a70c-4367-a60e-92bd186f1afb",
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"(1260, 7)"
|
|
]
|
|
},
|
|
"execution_count": 3,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"df = _df.copy()\n",
|
|
"df.shape"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"id": "ea75457d-9b95-41ae-9205-23b822c3a3d8",
|
|
"metadata": {},
|
|
"source": [
|
|
"### If ```numba``` installed, prep @njit"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 4,
|
|
"id": "38176845-652e-43dc-b426-12eaa9952c5f",
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"\n",
|
|
"============================================================\n",
|
|
" Slowest 10 Indicators [145]\n",
|
|
" Observations: 150\n",
|
|
"============================================================\n",
|
|
" secs ms\n",
|
|
"Indicator \n",
|
|
"alligator 1.46619 1466.1912\n",
|
|
"reflex 0.24142 241.4170\n",
|
|
"trendflex 0.16184 161.8418\n",
|
|
"td_seq 0.11109 111.0865\n",
|
|
"ssf 0.11097 110.9743\n",
|
|
"ssf3 0.09494 94.9402\n",
|
|
"qqe 0.02390 23.9021\n",
|
|
"cdl_pattern 0.01395 13.9522\n",
|
|
"psar 0.01361 13.6084\n",
|
|
"hilo 0.01038 10.3839\n",
|
|
"\n",
|
|
"============================================================\n",
|
|
"Time Stats:\n",
|
|
" secs ms\n",
|
|
"min 0.000020 0.023400\n",
|
|
"50% 0.001160 1.160200\n",
|
|
"mean 0.016943 16.943373\n",
|
|
"max 1.466190 1466.191200\n",
|
|
"total 2.456780 2456.789100\n",
|
|
"\n",
|
|
"============================================================\n",
|
|
"\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"if has_numba:\n",
|
|
" ta.performance(df.iloc[-150:], top=10, talib=False)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"id": "4ce3fb06-5ca6-44e2-a8f1-6c35af7c0c23",
|
|
"metadata": {},
|
|
"source": [
|
|
"## Performance **without** TA Lib"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 5,
|
|
"id": "6404c4d7-3318-4749-a2b7-c5dd9c5e3f59",
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"\n",
|
|
"[+] aberration: 1.5327 ms (0.0015 s)\n",
|
|
"[+] accbands: 1.7769 ms (0.0018 s)\n",
|
|
"[+] ad: 1.1659 ms (0.0012 s)\n",
|
|
"[+] adosc: 1.9079 ms (0.0019 s)\n",
|
|
"[+] adx: 3.1693 ms (0.0032 s)\n",
|
|
"[+] alligator: 216.3262 ms (0.2163 s)\n",
|
|
"[+] alma: 0.6678 ms (0.0007 s)\n",
|
|
"[+] amat: 3.2197 ms (0.0032 s)\n",
|
|
"[+] ao: 0.5863 ms (0.0006 s)\n",
|
|
"[+] aobv: 6.1393 ms (0.0061 s)\n",
|
|
"[+] apo: 1.1099 ms (0.0011 s)\n",
|
|
"[+] aroon: 9.4521 ms (0.0095 s)\n",
|
|
"[+] atr: 1.9118 ms (0.0019 s)\n",
|
|
"[+] bbands: 1.6445 ms (0.0016 s)\n",
|
|
"[+] bias: 0.8155 ms (0.0008 s)\n",
|
|
"[+] bop: 0.9314 ms (0.0009 s)\n",
|
|
"[+] brar: 4.5026 ms (0.0045 s)\n",
|
|
"[+] cci: 16.4964 ms (0.0165 s)\n",
|
|
"[+] cdl_pattern: 11.4451 ms (0.0114 s)\n",
|
|
"[+] cdl_z: 1.8045 ms (0.0018 s)\n",
|
|
"[+] cfo: 0.4211 ms (0.0004 s)\n",
|
|
"[+] cg: 5.2015 ms (0.0052 s)\n",
|
|
"[+] chop: 1.3616 ms (0.0014 s)\n",
|
|
"[+] cksp: 1.6839 ms (0.0017 s)\n",
|
|
"[+] cmf: 1.4190 ms (0.0014 s)\n",
|
|
"[+] cmo: 2.3247 ms (0.0023 s)\n",
|
|
"[+] coppock: 0.3732 ms (0.0004 s)\n",
|
|
"[+] cti: 0.2155 ms (0.0002 s)\n",
|
|
"[+] cube: 0.6051 ms (0.0006 s)\n",
|
|
"[+] decay: 0.6636 ms (0.0007 s)\n",
|
|
"[+] decreasing: 0.3895 ms (0.0004 s)\n",
|
|
"[+] dema: 0.9932 ms (0.0010 s)\n",
|
|
"[+] dm: 2.2943 ms (0.0023 s)\n",
|
|
"[+] donchian: 1.0459 ms (0.0010 s)\n",
|
|
"[+] dpo: 0.5231 ms (0.0005 s)\n",
|
|
"[+] ebsw: 40.8104 ms (0.0408 s)\n",
|
|
"[+] efi: 0.4605 ms (0.0005 s)\n",
|
|
"[+] ema: 0.5838 ms (0.0006 s)\n",
|
|
"[+] entropy: 0.9794 ms (0.0010 s)\n",
|
|
"[+] eom: 1.2326 ms (0.0012 s)\n",
|
|
"[+] er: 0.7048 ms (0.0007 s)\n",
|
|
"[+] eri: 0.7430 ms (0.0007 s)\n",
|
|
"[+] fisher: 9.7973 ms (0.0098 s)\n",
|
|
"[+] fwma: 2.7743 ms (0.0028 s)\n",
|
|
"[+] ha: 76.5196 ms (0.0765 s)\n",
|
|
"[+] hilo: 84.3213 ms (0.0843 s)\n",
|
|
"[+] hl2: 0.3896 ms (0.0004 s)\n",
|
|
"[+] hlc3: 0.3794 ms (0.0004 s)\n",
|
|
"[+] hma: 0.4388 ms (0.0004 s)\n",
|
|
"[+] hwc: 8.4353 ms (0.0084 s)\n",
|
|
"[+] hwma: 6.5198 ms (0.0065 s)\n",
|
|
"[+] ifisher: 0.6574 ms (0.0007 s)\n",
|
|
"[+] increasing: 0.3812 ms (0.0004 s)\n",
|
|
"[+] inertia: 4.6299 ms (0.0046 s)\n",
|
|
"[+] jma: 28.3453 ms (0.0283 s)\n",
|
|
"[+] kama: 16.0117 ms (0.0160 s)\n",
|
|
"[+] kc: 0.9787 ms (0.0010 s)\n",
|
|
"[+] kdj: 1.7019 ms (0.0017 s)\n",
|
|
"[+] kst: 1.7683 ms (0.0018 s)\n",
|
|
"[+] kurtosis: 0.4624 ms (0.0005 s)\n",
|
|
"[+] kvo: 3.4134 ms (0.0034 s)\n",
|
|
"[+] linreg: 12.5020 ms (0.0125 s)\n",
|
|
"[+] log_return: 0.2260 ms (0.0002 s)\n",
|
|
"[+] long_run: 0.0248 ms (0.0000 s)\n",
|
|
"[+] macd: 2.8070 ms (0.0028 s)\n",
|
|
"[+] mad: 14.9942 ms (0.0150 s)\n",
|
|
"[+] massi: 1.3709 ms (0.0014 s)\n",
|
|
"[+] mcgd: 2.3848 ms (0.0024 s)\n",
|
|
"[+] median: 0.7515 ms (0.0008 s)\n",
|
|
"[+] mfi: 4.2428 ms (0.0042 s)\n",
|
|
"[+] midpoint: 0.6989 ms (0.0007 s)\n",
|
|
"[+] midprice: 0.7099 ms (0.0007 s)\n",
|
|
"[+] mom: 0.2238 ms (0.0002 s)\n",
|
|
"[+] natr: 1.9008 ms (0.0019 s)\n",
|
|
"[+] nvi: 2.9522 ms (0.0030 s)\n",
|
|
"[+] obv: 2.1671 ms (0.0022 s)\n",
|
|
"[+] ohlc4: 0.4788 ms (0.0005 s)\n",
|
|
"[+] pdist: 1.2553 ms (0.0013 s)\n",
|
|
"[+] percent_return: 0.2165 ms (0.0002 s)\n",
|
|
"[+] pgo: 0.6223 ms (0.0006 s)\n",
|
|
"[+] ppo: 1.6771 ms (0.0017 s)\n",
|
|
"[+] psar: 108.4812 ms (0.1085 s)\n",
|
|
"[+] psl: 1.7707 ms (0.0018 s)\n",
|
|
"[+] pvi: 2.8398 ms (0.0028 s)\n",
|
|
"[+] pvo: 0.7763 ms (0.0008 s)\n",
|
|
"[+] pvol: 0.3209 ms (0.0003 s)\n",
|
|
"[+] pvr: 1.3872 ms (0.0014 s)\n",
|
|
"[+] pvt: 0.4248 ms (0.0004 s)\n",
|
|
"[+] pwma: 2.6412 ms (0.0026 s)\n",
|
|
"[+] qqe: 196.9207 ms (0.1969 s)\n",
|
|
"[+] qstick: 0.5539 ms (0.0006 s)\n",
|
|
"[+] quantile: 0.7560 ms (0.0008 s)\n",
|
|
"[+] reflex: 0.2509 ms (0.0003 s)\n",
|
|
"[+] remap: 0.1996 ms (0.0002 s)\n",
|
|
"[+] rma: 0.4105 ms (0.0004 s)\n",
|
|
"[+] roc: 0.4310 ms (0.0004 s)\n",
|
|
"[+] rsi: 2.9662 ms (0.0030 s)\n",
|
|
"[+] rsx: 10.6649 ms (0.0107 s)\n",
|
|
"[+] rvgi: 7.4468 ms (0.0074 s)\n",
|
|
"[+] rvi: 4.5487 ms (0.0045 s)\n",
|
|
"[+] short_run: 0.0293 ms (0.0000 s)\n",
|
|
"[+] sinwma: 11.4138 ms (0.0114 s)\n",
|
|
"[+] skew: 0.3613 ms (0.0004 s)\n",
|
|
"[+] slope: 0.2908 ms (0.0003 s)\n",
|
|
"[+] sma: 0.4385 ms (0.0004 s)\n",
|
|
"[+] smi: 1.2245 ms (0.0012 s)\n",
|
|
"[+] smma: 75.6244 ms (0.0756 s)\n",
|
|
"[+] squeeze: 3.4781 ms (0.0035 s)\n",
|
|
"[+] squeeze_pro: 4.9684 ms (0.0050 s)\n",
|
|
"[+] ssf: 0.2245 ms (0.0002 s)\n",
|
|
"[+] ssf3: 0.1924 ms (0.0002 s)\n",
|
|
"[+] stc: 25.4543 ms (0.0255 s)\n",
|
|
"[+] stdev: 0.4278 ms (0.0004 s)\n",
|
|
"[+] stoch: 2.1585 ms (0.0022 s)\n",
|
|
"[+] stochf: 1.9095 ms (0.0019 s)\n",
|
|
"[+] stochrsi: 1.4200 ms (0.0014 s)\n",
|
|
"[+] supertrend: 54.8726 ms (0.0549 s)\n",
|
|
"[+] swma: 2.6174 ms (0.0026 s)\n",
|
|
"[+] t3: 2.7930 ms (0.0028 s)\n",
|
|
"[+] td_seq: 974.4067 ms (0.9744 s)\n",
|
|
"[+] tema: 1.8953 ms (0.0019 s)\n",
|
|
"[+] thermo: 1.8535 ms (0.0019 s)\n",
|
|
"[+] tos_stdevall: 3.2848 ms (0.0033 s)\n",
|
|
"[+] trendflex: 0.2511 ms (0.0003 s)\n",
|
|
"[+] trima: 0.7133 ms (0.0007 s)\n",
|
|
"[+] trix: 2.0507 ms (0.0021 s)\n",
|
|
"[+] true_range: 1.5320 ms (0.0015 s)\n",
|
|
"[+] tsi: 2.6424 ms (0.0026 s)\n",
|
|
"[+] tsignals: 0.0373 ms (0.0000 s)\n",
|
|
"[+] ttm_trend: 2.0251 ms (0.0020 s)\n",
|
|
"[+] ui: 0.9397 ms (0.0009 s)\n",
|
|
"[+] uo: 3.0819 ms (0.0031 s)\n",
|
|
"[+] variance: 0.3726 ms (0.0004 s)\n",
|
|
"[+] vhf: 1.1655 ms (0.0012 s)\n",
|
|
"[+] vidya: 51.9878 ms (0.0520 s)\n",
|
|
"[+] vortex: 1.9960 ms (0.0020 s)\n",
|
|
"[+] vwap: 2.2110 ms (0.0022 s)\n",
|
|
"[+] vwma: 0.5046 ms (0.0005 s)\n",
|
|
"[+] wb_tsv: 4.3750 ms (0.0044 s)\n",
|
|
"[+] wcp: 0.4249 ms (0.0004 s)\n",
|
|
"[+] willr: 1.0260 ms (0.0010 s)\n",
|
|
"[+] wma: 12.1530 ms (0.0122 s)\n",
|
|
"[+] xsignals: 0.0292 ms (0.0000 s)\n",
|
|
"[+] zlma: 0.8615 ms (0.0009 s)\n",
|
|
"[+] zscore: 1.1391 ms (0.0011 s)\n",
|
|
"\n",
|
|
"============================================================\n",
|
|
" Slowest 10 Indicators [145]\n",
|
|
" Observations: 1260\n",
|
|
"============================================================\n",
|
|
" secs ms\n",
|
|
"Indicator \n",
|
|
"td_seq 0.97441 974.4067\n",
|
|
"alligator 0.21633 216.3262\n",
|
|
"qqe 0.19692 196.9207\n",
|
|
"psar 0.10848 108.4812\n",
|
|
"hilo 0.08432 84.3213\n",
|
|
"ha 0.07652 76.5196\n",
|
|
"smma 0.07562 75.6244\n",
|
|
"supertrend 0.05487 54.8726\n",
|
|
"vidya 0.05199 51.9878\n",
|
|
"ebsw 0.04081 40.8104\n",
|
|
"\n",
|
|
"============================================================\n",
|
|
"Time Stats:\n",
|
|
" secs ms\n",
|
|
"min 0.000020 0.024800\n",
|
|
"50% 0.001530 1.532000\n",
|
|
"mean 0.015575 15.575298\n",
|
|
"max 0.974410 974.406700\n",
|
|
"total 2.258380 2258.418200\n",
|
|
"\n",
|
|
"============================================================\n",
|
|
"\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"pta_speedsdf, pta_statsdf = ta.performance(df, top=10, talib=False, stats=True, gradient=True, verbose=True)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 6,
|
|
"id": "b3a753e2-9634-4cc8-9544-5c28c92130a3",
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/html": [
|
|
"<style type=\"text/css\">\n",
|
|
"#T_38980_row0_col0, #T_38980_row0_col1 {\n",
|
|
" background-color: #ff0000;\n",
|
|
" color: #f1f1f1;\n",
|
|
"}\n",
|
|
"#T_38980_row1_col0, #T_38980_row1_col1 {\n",
|
|
" background-color: #ffcf00;\n",
|
|
" color: #000000;\n",
|
|
"}\n",
|
|
"#T_38980_row2_col0, #T_38980_row2_col1 {\n",
|
|
" background-color: #ffd500;\n",
|
|
" color: #000000;\n",
|
|
"}\n",
|
|
"#T_38980_row3_col0, #T_38980_row3_col1 {\n",
|
|
" background-color: #ffed00;\n",
|
|
" color: #000000;\n",
|
|
"}\n",
|
|
"#T_38980_row4_col0, #T_38980_row4_col1 {\n",
|
|
" background-color: #fff400;\n",
|
|
" color: #000000;\n",
|
|
"}\n",
|
|
"#T_38980_row5_col0, #T_38980_row5_col1, #T_38980_row6_col0, #T_38980_row6_col1 {\n",
|
|
" background-color: #fff600;\n",
|
|
" color: #000000;\n",
|
|
"}\n",
|
|
"#T_38980_row7_col0, #T_38980_row7_col1, #T_38980_row8_col0, #T_38980_row8_col1 {\n",
|
|
" background-color: #fffc00;\n",
|
|
" color: #000000;\n",
|
|
"}\n",
|
|
"#T_38980_row9_col0, #T_38980_row9_col1 {\n",
|
|
" background-color: #ffff00;\n",
|
|
" color: #000000;\n",
|
|
"}\n",
|
|
"</style>\n",
|
|
"<table id=\"T_38980_\">\n",
|
|
" <thead>\n",
|
|
" <tr>\n",
|
|
" <th class=\"blank level0\" > </th>\n",
|
|
" <th class=\"col_heading level0 col0\" >secs</th>\n",
|
|
" <th class=\"col_heading level0 col1\" >ms</th>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th class=\"index_name level0\" >Indicator</th>\n",
|
|
" <th class=\"blank col0\" > </th>\n",
|
|
" <th class=\"blank col1\" > </th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th id=\"T_38980_level0_row0\" class=\"row_heading level0 row0\" >td_seq</th>\n",
|
|
" <td id=\"T_38980_row0_col0\" class=\"data row0 col0\" >0.974410</td>\n",
|
|
" <td id=\"T_38980_row0_col1\" class=\"data row0 col1\" >974.406700</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th id=\"T_38980_level0_row1\" class=\"row_heading level0 row1\" >alligator</th>\n",
|
|
" <td id=\"T_38980_row1_col0\" class=\"data row1 col0\" >0.216330</td>\n",
|
|
" <td id=\"T_38980_row1_col1\" class=\"data row1 col1\" >216.326200</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th id=\"T_38980_level0_row2\" class=\"row_heading level0 row2\" >qqe</th>\n",
|
|
" <td id=\"T_38980_row2_col0\" class=\"data row2 col0\" >0.196920</td>\n",
|
|
" <td id=\"T_38980_row2_col1\" class=\"data row2 col1\" >196.920700</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th id=\"T_38980_level0_row3\" class=\"row_heading level0 row3\" >psar</th>\n",
|
|
" <td id=\"T_38980_row3_col0\" class=\"data row3 col0\" >0.108480</td>\n",
|
|
" <td id=\"T_38980_row3_col1\" class=\"data row3 col1\" >108.481200</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th id=\"T_38980_level0_row4\" class=\"row_heading level0 row4\" >hilo</th>\n",
|
|
" <td id=\"T_38980_row4_col0\" class=\"data row4 col0\" >0.084320</td>\n",
|
|
" <td id=\"T_38980_row4_col1\" class=\"data row4 col1\" >84.321300</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th id=\"T_38980_level0_row5\" class=\"row_heading level0 row5\" >ha</th>\n",
|
|
" <td id=\"T_38980_row5_col0\" class=\"data row5 col0\" >0.076520</td>\n",
|
|
" <td id=\"T_38980_row5_col1\" class=\"data row5 col1\" >76.519600</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th id=\"T_38980_level0_row6\" class=\"row_heading level0 row6\" >smma</th>\n",
|
|
" <td id=\"T_38980_row6_col0\" class=\"data row6 col0\" >0.075620</td>\n",
|
|
" <td id=\"T_38980_row6_col1\" class=\"data row6 col1\" >75.624400</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th id=\"T_38980_level0_row7\" class=\"row_heading level0 row7\" >supertrend</th>\n",
|
|
" <td id=\"T_38980_row7_col0\" class=\"data row7 col0\" >0.054870</td>\n",
|
|
" <td id=\"T_38980_row7_col1\" class=\"data row7 col1\" >54.872600</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th id=\"T_38980_level0_row8\" class=\"row_heading level0 row8\" >vidya</th>\n",
|
|
" <td id=\"T_38980_row8_col0\" class=\"data row8 col0\" >0.051990</td>\n",
|
|
" <td id=\"T_38980_row8_col1\" class=\"data row8 col1\" >51.987800</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th id=\"T_38980_level0_row9\" class=\"row_heading level0 row9\" >ebsw</th>\n",
|
|
" <td id=\"T_38980_row9_col0\" class=\"data row9 col0\" >0.040810</td>\n",
|
|
" <td id=\"T_38980_row9_col1\" class=\"data row9 col1\" >40.810400</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n"
|
|
],
|
|
"text/plain": [
|
|
"<pandas.io.formats.style.Styler at 0x152c5a820>"
|
|
]
|
|
},
|
|
"execution_count": 6,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"pta_speedsdf"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 7,
|
|
"id": "715520de-ad95-47a6-aa41-5f00d1b23eac",
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/html": [
|
|
"<div>\n",
|
|
"<style scoped>\n",
|
|
" .dataframe tbody tr th:only-of-type {\n",
|
|
" vertical-align: middle;\n",
|
|
" }\n",
|
|
"\n",
|
|
" .dataframe tbody tr th {\n",
|
|
" vertical-align: top;\n",
|
|
" }\n",
|
|
"\n",
|
|
" .dataframe thead th {\n",
|
|
" text-align: right;\n",
|
|
" }\n",
|
|
"</style>\n",
|
|
"<table border=\"1\" class=\"dataframe\">\n",
|
|
" <thead>\n",
|
|
" <tr style=\"text-align: right;\">\n",
|
|
" <th></th>\n",
|
|
" <th>secs</th>\n",
|
|
" <th>ms</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>min</th>\n",
|
|
" <td>0.000020</td>\n",
|
|
" <td>0.024800</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>50%</th>\n",
|
|
" <td>0.001530</td>\n",
|
|
" <td>1.532000</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>mean</th>\n",
|
|
" <td>0.015575</td>\n",
|
|
" <td>15.575298</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>max</th>\n",
|
|
" <td>0.974410</td>\n",
|
|
" <td>974.406700</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>total</th>\n",
|
|
" <td>2.258380</td>\n",
|
|
" <td>2258.418200</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" secs ms\n",
|
|
"min 0.000020 0.024800\n",
|
|
"50% 0.001530 1.532000\n",
|
|
"mean 0.015575 15.575298\n",
|
|
"max 0.974410 974.406700\n",
|
|
"total 2.258380 2258.418200"
|
|
]
|
|
},
|
|
"execution_count": 7,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"pta_statsdf"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"id": "942e3b8a-e3d9-480f-82b4-75d311b54cfa",
|
|
"metadata": {},
|
|
"source": [
|
|
"## Performance **with** TA Lib"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 8,
|
|
"id": "b4757c9e-7a8f-4b82-93a9-8b3e4837a1d0",
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"\n",
|
|
"[+] aberration: 1.3997 ms (0.0014 s)\n",
|
|
"[+] accbands: 1.5715 ms (0.0016 s)\n",
|
|
"[+] ad: 0.5410 ms (0.0005 s)\n",
|
|
"[+] adosc: 0.4955 ms (0.0005 s)\n",
|
|
"[+] adx: 4.3656 ms (0.0044 s)\n",
|
|
"[+] alligator: 218.5501 ms (0.2186 s)\n",
|
|
"[+] alma: 0.5894 ms (0.0006 s)\n",
|
|
"[+] amat: 2.3295 ms (0.0023 s)\n",
|
|
"[+] ao: 0.5743 ms (0.0006 s)\n",
|
|
"[+] aobv: 2.8668 ms (0.0029 s)\n",
|
|
"[+] apo: 0.2542 ms (0.0003 s)\n",
|
|
"[+] aroon: 0.6400 ms (0.0006 s)\n",
|
|
"[+] atr: 0.4125 ms (0.0004 s)\n",
|
|
"[+] bbands: 0.9828 ms (0.0010 s)\n",
|
|
"[+] bias: 0.3328 ms (0.0003 s)\n",
|
|
"[+] bop: 0.4978 ms (0.0005 s)\n",
|
|
"[+] brar: 4.5548 ms (0.0046 s)\n",
|
|
"[+] cci: 0.5223 ms (0.0005 s)\n",
|
|
"[+] cdl_pattern: 12.5554 ms (0.0126 s)\n",
|
|
"[+] cdl_z: 1.7763 ms (0.0018 s)\n",
|
|
"[+] cfo: 0.4176 ms (0.0004 s)\n",
|
|
"[+] cg: 5.6833 ms (0.0057 s)\n",
|
|
"[+] chop: 1.2825 ms (0.0013 s)\n",
|
|
"[+] cksp: 1.5348 ms (0.0015 s)\n",
|
|
"[+] cmf: 1.2280 ms (0.0012 s)\n",
|
|
"[+] cmo: 0.2290 ms (0.0002 s)\n",
|
|
"[+] coppock: 0.3436 ms (0.0003 s)\n",
|
|
"[+] cti: 0.2040 ms (0.0002 s)\n",
|
|
"[+] cube: 0.6042 ms (0.0006 s)\n",
|
|
"[+] decay: 0.8007 ms (0.0008 s)\n",
|
|
"[+] decreasing: 0.3465 ms (0.0003 s)\n",
|
|
"[+] dema: 0.2054 ms (0.0002 s)\n",
|
|
"[+] dm: 0.5538 ms (0.0006 s)\n",
|
|
"[+] donchian: 1.0042 ms (0.0010 s)\n",
|
|
"[+] dpo: 0.4992 ms (0.0005 s)\n",
|
|
"[+] ebsw: 40.0872 ms (0.0401 s)\n",
|
|
"[+] efi: 0.5075 ms (0.0005 s)\n",
|
|
"[+] ema: 0.2051 ms (0.0002 s)\n",
|
|
"[+] entropy: 0.8241 ms (0.0008 s)\n",
|
|
"[+] eom: 1.0890 ms (0.0011 s)\n",
|
|
"[+] er: 0.6081 ms (0.0006 s)\n",
|
|
"[+] eri: 0.7362 ms (0.0007 s)\n",
|
|
"[+] fisher: 10.0660 ms (0.0101 s)\n",
|
|
"[+] fwma: 2.5385 ms (0.0025 s)\n",
|
|
"[+] ha: 77.2657 ms (0.0773 s)\n",
|
|
"[+] hilo: 84.1511 ms (0.0842 s)\n",
|
|
"[+] hl2: 0.3273 ms (0.0003 s)\n",
|
|
"[+] hlc3: 0.3886 ms (0.0004 s)\n",
|
|
"[+] hma: 0.4175 ms (0.0004 s)\n",
|
|
"[+] hwc: 8.7684 ms (0.0088 s)\n",
|
|
"[+] hwma: 6.8195 ms (0.0068 s)\n",
|
|
"[+] ifisher: 0.7055 ms (0.0007 s)\n",
|
|
"[+] increasing: 0.3857 ms (0.0004 s)\n",
|
|
"[+] inertia: 4.6454 ms (0.0046 s)\n",
|
|
"[+] jma: 28.8499 ms (0.0288 s)\n",
|
|
"[+] kama: 16.1395 ms (0.0161 s)\n",
|
|
"[+] kc: 1.0300 ms (0.0010 s)\n",
|
|
"[+] kdj: 1.7678 ms (0.0018 s)\n",
|
|
"[+] kst: 1.8943 ms (0.0019 s)\n",
|
|
"[+] kurtosis: 0.3698 ms (0.0004 s)\n",
|
|
"[+] kvo: 3.6475 ms (0.0036 s)\n",
|
|
"[+] linreg: 0.2259 ms (0.0002 s)\n",
|
|
"[+] log_return: 0.2183 ms (0.0002 s)\n",
|
|
"[+] long_run: 0.0255 ms (0.0000 s)\n",
|
|
"[+] macd: 0.4919 ms (0.0005 s)\n",
|
|
"[+] mad: 15.5197 ms (0.0155 s)\n",
|
|
"[+] massi: 0.8280 ms (0.0008 s)\n",
|
|
"[+] mcgd: 2.5448 ms (0.0025 s)\n",
|
|
"[+] median: 0.8207 ms (0.0008 s)\n",
|
|
"[+] mfi: 0.6164 ms (0.0006 s)\n",
|
|
"[+] midpoint: 0.2796 ms (0.0003 s)\n",
|
|
"[+] midprice: 0.3612 ms (0.0004 s)\n",
|
|
"[+] mom: 0.1926 ms (0.0002 s)\n",
|
|
"[+] natr: 0.4305 ms (0.0004 s)\n",
|
|
"[+] nvi: 3.3641 ms (0.0034 s)\n",
|
|
"[+] obv: 0.3551 ms (0.0004 s)\n",
|
|
"[+] ohlc4: 0.4696 ms (0.0005 s)\n",
|
|
"[+] pdist: 1.2775 ms (0.0013 s)\n",
|
|
"[+] percent_return: 0.2099 ms (0.0002 s)\n",
|
|
"[+] pgo: 0.6248 ms (0.0006 s)\n",
|
|
"[+] ppo: 0.5915 ms (0.0006 s)\n",
|
|
"[+] psar: 116.5620 ms (0.1166 s)\n",
|
|
"[+] psl: 2.2435 ms (0.0022 s)\n",
|
|
"[+] pvi: 3.0409 ms (0.0030 s)\n",
|
|
"[+] pvo: 1.1417 ms (0.0011 s)\n",
|
|
"[+] pvol: 0.4824 ms (0.0005 s)\n",
|
|
"[+] pvr: 2.0286 ms (0.0020 s)\n",
|
|
"[+] pvt: 0.7141 ms (0.0007 s)\n",
|
|
"[+] pwma: 2.4379 ms (0.0024 s)\n",
|
|
"[+] qqe: 204.6109 ms (0.2046 s)\n",
|
|
"[+] qstick: 0.7636 ms (0.0008 s)\n",
|
|
"[+] quantile: 0.8308 ms (0.0008 s)\n",
|
|
"[+] reflex: 0.2776 ms (0.0003 s)\n",
|
|
"[+] remap: 0.1995 ms (0.0002 s)\n",
|
|
"[+] rma: 0.3934 ms (0.0004 s)\n",
|
|
"[+] roc: 0.2270 ms (0.0002 s)\n",
|
|
"[+] rsi: 0.2160 ms (0.0002 s)\n",
|
|
"[+] rsx: 10.7125 ms (0.0107 s)\n",
|
|
"[+] rvgi: 8.4559 ms (0.0085 s)\n",
|
|
"[+] rvi: 5.1331 ms (0.0051 s)\n",
|
|
"[+] short_run: 0.0307 ms (0.0000 s)\n",
|
|
"[+] sinwma: 11.6453 ms (0.0116 s)\n",
|
|
"[+] skew: 0.6612 ms (0.0007 s)\n",
|
|
"[+] slope: 0.3808 ms (0.0004 s)\n",
|
|
"[+] sma: 0.2257 ms (0.0002 s)\n",
|
|
"[+] smi: 1.3777 ms (0.0014 s)\n",
|
|
"[+] smma: 72.7116 ms (0.0727 s)\n",
|
|
"[+] squeeze: 3.6359 ms (0.0036 s)\n",
|
|
"[+] squeeze_pro: 5.9578 ms (0.0060 s)\n",
|
|
"[+] ssf: 0.2405 ms (0.0002 s)\n",
|
|
"[+] ssf3: 0.1993 ms (0.0002 s)\n",
|
|
"[+] stc: 25.7170 ms (0.0257 s)\n",
|
|
"[+] stdev: 0.2226 ms (0.0002 s)\n",
|
|
"[+] stoch: 0.6385 ms (0.0006 s)\n",
|
|
"[+] stochf: 0.6130 ms (0.0006 s)\n",
|
|
"[+] stochrsi: 1.4542 ms (0.0015 s)\n",
|
|
"[+] supertrend: 56.8238 ms (0.0568 s)\n",
|
|
"[+] swma: 2.7622 ms (0.0028 s)\n",
|
|
"[+] t3: 0.2826 ms (0.0003 s)\n",
|
|
"[+] td_seq: 961.1572 ms (0.9612 s)\n",
|
|
"[+] tema: 0.3082 ms (0.0003 s)\n",
|
|
"[+] thermo: 1.6463 ms (0.0016 s)\n",
|
|
"[+] tos_stdevall: 3.4891 ms (0.0035 s)\n",
|
|
"[+] trendflex: 0.2553 ms (0.0003 s)\n",
|
|
"[+] trima: 0.2115 ms (0.0002 s)\n",
|
|
"[+] trix: 0.9661 ms (0.0010 s)\n",
|
|
"[+] true_range: 0.3955 ms (0.0004 s)\n",
|
|
"[+] tsi: 0.8169 ms (0.0008 s)\n",
|
|
"[+] tsignals: 0.0269 ms (0.0000 s)\n",
|
|
"[+] ttm_trend: 1.9096 ms (0.0019 s)\n",
|
|
"[+] ui: 0.9255 ms (0.0009 s)\n",
|
|
"[+] uo: 0.4292 ms (0.0004 s)\n",
|
|
"[+] variance: 0.1917 ms (0.0002 s)\n",
|
|
"[+] vhf: 1.7259 ms (0.0017 s)\n",
|
|
"[+] vidya: 50.1970 ms (0.0502 s)\n",
|
|
"[+] vortex: 1.6858 ms (0.0017 s)\n",
|
|
"[+] vwap: 2.1889 ms (0.0022 s)\n",
|
|
"[+] vwma: 0.5210 ms (0.0005 s)\n",
|
|
"[+] wb_tsv: 4.3906 ms (0.0044 s)\n",
|
|
"[+] wcp: 0.4350 ms (0.0004 s)\n",
|
|
"[+] willr: 0.3989 ms (0.0004 s)\n",
|
|
"[+] wma: 0.1878 ms (0.0002 s)\n",
|
|
"[+] xsignals: 0.0252 ms (0.0000 s)\n",
|
|
"[+] zlma: 0.3721 ms (0.0004 s)\n",
|
|
"[+] zscore: 0.4181 ms (0.0004 s)\n",
|
|
"\n",
|
|
"============================================================\n",
|
|
" Slowest 10 Indicators [145]\n",
|
|
" Observations[talib]: 1260\n",
|
|
"============================================================\n",
|
|
" secs ms\n",
|
|
"Indicator \n",
|
|
"td_seq 0.96116 961.1572\n",
|
|
"alligator 0.21855 218.5501\n",
|
|
"qqe 0.20461 204.6109\n",
|
|
"psar 0.11656 116.5620\n",
|
|
"hilo 0.08415 84.1511\n",
|
|
"ha 0.07727 77.2657\n",
|
|
"smma 0.07271 72.7116\n",
|
|
"supertrend 0.05682 56.8238\n",
|
|
"vidya 0.05020 50.1970\n",
|
|
"ebsw 0.04009 40.0872\n",
|
|
"\n",
|
|
"============================================================\n",
|
|
"Time Stats:\n",
|
|
" secs ms\n",
|
|
"min 0.000030 0.025200\n",
|
|
"50% 0.000710 0.714100\n",
|
|
"mean 0.015006 15.005234\n",
|
|
"max 0.961160 961.157200\n",
|
|
"total 2.175830 2175.759000\n",
|
|
"\n",
|
|
"============================================================\n",
|
|
"\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"tal_speedsdf, tal_statsdf = ta.performance(df, top=10, talib=True, stats=True, gradient=True, verbose=True)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 9,
|
|
"id": "3fe877e5-b1eb-4e68-9720-67a1e7ee6827",
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/html": [
|
|
"<style type=\"text/css\">\n",
|
|
"#T_5c384_row0_col0, #T_5c384_row0_col1 {\n",
|
|
" background-color: #ff0000;\n",
|
|
" color: #f1f1f1;\n",
|
|
"}\n",
|
|
"#T_5c384_row1_col0, #T_5c384_row1_col1 {\n",
|
|
" background-color: #ffce00;\n",
|
|
" color: #000000;\n",
|
|
"}\n",
|
|
"#T_5c384_row2_col0, #T_5c384_row2_col1 {\n",
|
|
" background-color: #ffd200;\n",
|
|
" color: #000000;\n",
|
|
"}\n",
|
|
"#T_5c384_row3_col0, #T_5c384_row3_col1 {\n",
|
|
" background-color: #ffea00;\n",
|
|
" color: #000000;\n",
|
|
"}\n",
|
|
"#T_5c384_row4_col0, #T_5c384_row4_col1 {\n",
|
|
" background-color: #fff300;\n",
|
|
" color: #000000;\n",
|
|
"}\n",
|
|
"#T_5c384_row5_col0, #T_5c384_row5_col1 {\n",
|
|
" background-color: #fff500;\n",
|
|
" color: #000000;\n",
|
|
"}\n",
|
|
"#T_5c384_row6_col0, #T_5c384_row6_col1 {\n",
|
|
" background-color: #fff600;\n",
|
|
" color: #000000;\n",
|
|
"}\n",
|
|
"#T_5c384_row7_col0, #T_5c384_row7_col1 {\n",
|
|
" background-color: #fffb00;\n",
|
|
" color: #000000;\n",
|
|
"}\n",
|
|
"#T_5c384_row8_col0, #T_5c384_row8_col1 {\n",
|
|
" background-color: #fffd00;\n",
|
|
" color: #000000;\n",
|
|
"}\n",
|
|
"#T_5c384_row9_col0, #T_5c384_row9_col1 {\n",
|
|
" background-color: #ffff00;\n",
|
|
" color: #000000;\n",
|
|
"}\n",
|
|
"</style>\n",
|
|
"<table id=\"T_5c384_\">\n",
|
|
" <thead>\n",
|
|
" <tr>\n",
|
|
" <th class=\"blank level0\" > </th>\n",
|
|
" <th class=\"col_heading level0 col0\" >secs</th>\n",
|
|
" <th class=\"col_heading level0 col1\" >ms</th>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th class=\"index_name level0\" >Indicator</th>\n",
|
|
" <th class=\"blank col0\" > </th>\n",
|
|
" <th class=\"blank col1\" > </th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th id=\"T_5c384_level0_row0\" class=\"row_heading level0 row0\" >td_seq</th>\n",
|
|
" <td id=\"T_5c384_row0_col0\" class=\"data row0 col0\" >0.961160</td>\n",
|
|
" <td id=\"T_5c384_row0_col1\" class=\"data row0 col1\" >961.157200</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th id=\"T_5c384_level0_row1\" class=\"row_heading level0 row1\" >alligator</th>\n",
|
|
" <td id=\"T_5c384_row1_col0\" class=\"data row1 col0\" >0.218550</td>\n",
|
|
" <td id=\"T_5c384_row1_col1\" class=\"data row1 col1\" >218.550100</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th id=\"T_5c384_level0_row2\" class=\"row_heading level0 row2\" >qqe</th>\n",
|
|
" <td id=\"T_5c384_row2_col0\" class=\"data row2 col0\" >0.204610</td>\n",
|
|
" <td id=\"T_5c384_row2_col1\" class=\"data row2 col1\" >204.610900</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th id=\"T_5c384_level0_row3\" class=\"row_heading level0 row3\" >psar</th>\n",
|
|
" <td id=\"T_5c384_row3_col0\" class=\"data row3 col0\" >0.116560</td>\n",
|
|
" <td id=\"T_5c384_row3_col1\" class=\"data row3 col1\" >116.562000</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th id=\"T_5c384_level0_row4\" class=\"row_heading level0 row4\" >hilo</th>\n",
|
|
" <td id=\"T_5c384_row4_col0\" class=\"data row4 col0\" >0.084150</td>\n",
|
|
" <td id=\"T_5c384_row4_col1\" class=\"data row4 col1\" >84.151100</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th id=\"T_5c384_level0_row5\" class=\"row_heading level0 row5\" >ha</th>\n",
|
|
" <td id=\"T_5c384_row5_col0\" class=\"data row5 col0\" >0.077270</td>\n",
|
|
" <td id=\"T_5c384_row5_col1\" class=\"data row5 col1\" >77.265700</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th id=\"T_5c384_level0_row6\" class=\"row_heading level0 row6\" >smma</th>\n",
|
|
" <td id=\"T_5c384_row6_col0\" class=\"data row6 col0\" >0.072710</td>\n",
|
|
" <td id=\"T_5c384_row6_col1\" class=\"data row6 col1\" >72.711600</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th id=\"T_5c384_level0_row7\" class=\"row_heading level0 row7\" >supertrend</th>\n",
|
|
" <td id=\"T_5c384_row7_col0\" class=\"data row7 col0\" >0.056820</td>\n",
|
|
" <td id=\"T_5c384_row7_col1\" class=\"data row7 col1\" >56.823800</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th id=\"T_5c384_level0_row8\" class=\"row_heading level0 row8\" >vidya</th>\n",
|
|
" <td id=\"T_5c384_row8_col0\" class=\"data row8 col0\" >0.050200</td>\n",
|
|
" <td id=\"T_5c384_row8_col1\" class=\"data row8 col1\" >50.197000</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th id=\"T_5c384_level0_row9\" class=\"row_heading level0 row9\" >ebsw</th>\n",
|
|
" <td id=\"T_5c384_row9_col0\" class=\"data row9 col0\" >0.040090</td>\n",
|
|
" <td id=\"T_5c384_row9_col1\" class=\"data row9 col1\" >40.087200</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n"
|
|
],
|
|
"text/plain": [
|
|
"<pandas.io.formats.style.Styler at 0x152d985e0>"
|
|
]
|
|
},
|
|
"execution_count": 9,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"tal_speedsdf"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 10,
|
|
"id": "bf35b59d-4253-41e3-895e-432a824789fb",
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/html": [
|
|
"<div>\n",
|
|
"<style scoped>\n",
|
|
" .dataframe tbody tr th:only-of-type {\n",
|
|
" vertical-align: middle;\n",
|
|
" }\n",
|
|
"\n",
|
|
" .dataframe tbody tr th {\n",
|
|
" vertical-align: top;\n",
|
|
" }\n",
|
|
"\n",
|
|
" .dataframe thead th {\n",
|
|
" text-align: right;\n",
|
|
" }\n",
|
|
"</style>\n",
|
|
"<table border=\"1\" class=\"dataframe\">\n",
|
|
" <thead>\n",
|
|
" <tr style=\"text-align: right;\">\n",
|
|
" <th></th>\n",
|
|
" <th>secs</th>\n",
|
|
" <th>ms</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>min</th>\n",
|
|
" <td>0.000030</td>\n",
|
|
" <td>0.025200</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>50%</th>\n",
|
|
" <td>0.000710</td>\n",
|
|
" <td>0.714100</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>mean</th>\n",
|
|
" <td>0.015006</td>\n",
|
|
" <td>15.005234</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>max</th>\n",
|
|
" <td>0.961160</td>\n",
|
|
" <td>961.157200</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>total</th>\n",
|
|
" <td>2.175830</td>\n",
|
|
" <td>2175.759000</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" secs ms\n",
|
|
"min 0.000030 0.025200\n",
|
|
"50% 0.000710 0.714100\n",
|
|
"mean 0.015006 15.005234\n",
|
|
"max 0.961160 961.157200\n",
|
|
"total 2.175830 2175.759000"
|
|
]
|
|
},
|
|
"execution_count": 10,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"tal_statsdf"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"id": "c33c37fa-8062-4258-90ba-0c19d115698d",
|
|
"metadata": {},
|
|
"source": [
|
|
"# Comparisons"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 11,
|
|
"id": "35454271-cee2-4bc0-84b7-4099730bb0ed",
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"(1260, 7)\n"
|
|
]
|
|
},
|
|
{
|
|
"data": {
|
|
"text/html": [
|
|
"<div>\n",
|
|
"<style scoped>\n",
|
|
" .dataframe tbody tr th:only-of-type {\n",
|
|
" vertical-align: middle;\n",
|
|
" }\n",
|
|
"\n",
|
|
" .dataframe tbody tr th {\n",
|
|
" vertical-align: top;\n",
|
|
" }\n",
|
|
"\n",
|
|
" .dataframe thead th {\n",
|
|
" text-align: right;\n",
|
|
" }\n",
|
|
"</style>\n",
|
|
"<table border=\"1\" class=\"dataframe\">\n",
|
|
" <thead>\n",
|
|
" <tr style=\"text-align: right;\">\n",
|
|
" <th></th>\n",
|
|
" <th></th>\n",
|
|
" <th>min</th>\n",
|
|
" <th>50%</th>\n",
|
|
" <th>mean</th>\n",
|
|
" <th>max</th>\n",
|
|
" <th>total</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th rowspan=\"2\" valign=\"top\">TA Lib</th>\n",
|
|
" <th>secs</th>\n",
|
|
" <td>0.00003</td>\n",
|
|
" <td>0.00071</td>\n",
|
|
" <td>0.015006</td>\n",
|
|
" <td>0.96116</td>\n",
|
|
" <td>2.17583</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>ms</th>\n",
|
|
" <td>0.02520</td>\n",
|
|
" <td>0.71410</td>\n",
|
|
" <td>15.005234</td>\n",
|
|
" <td>961.15720</td>\n",
|
|
" <td>2175.75900</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th rowspan=\"2\" valign=\"top\">Pandas TA</th>\n",
|
|
" <th>secs</th>\n",
|
|
" <td>0.00002</td>\n",
|
|
" <td>0.00153</td>\n",
|
|
" <td>0.015575</td>\n",
|
|
" <td>0.97441</td>\n",
|
|
" <td>2.25838</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>ms</th>\n",
|
|
" <td>0.02480</td>\n",
|
|
" <td>1.53200</td>\n",
|
|
" <td>15.575298</td>\n",
|
|
" <td>974.40670</td>\n",
|
|
" <td>2258.41820</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" min 50% mean max total\n",
|
|
"TA Lib secs 0.00003 0.00071 0.015006 0.96116 2.17583\n",
|
|
" ms 0.02520 0.71410 15.005234 961.15720 2175.75900\n",
|
|
"Pandas TA secs 0.00002 0.00153 0.015575 0.97441 2.25838\n",
|
|
" ms 0.02480 1.53200 15.575298 974.40670 2258.41820"
|
|
]
|
|
},
|
|
"execution_count": 11,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"print(df.shape)\n",
|
|
"compdf = concat([tal_statsdf, pta_statsdf], keys=[\"TA Lib\", \"Pandas TA\"], axis=1).T\n",
|
|
"compdf"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 12,
|
|
"id": "167b311f-5180-4abf-95e7-1b41a96a6a1d",
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/html": [
|
|
"<div>\n",
|
|
"<style scoped>\n",
|
|
" .dataframe tbody tr th:only-of-type {\n",
|
|
" vertical-align: middle;\n",
|
|
" }\n",
|
|
"\n",
|
|
" .dataframe tbody tr th {\n",
|
|
" vertical-align: top;\n",
|
|
" }\n",
|
|
"\n",
|
|
" .dataframe thead th {\n",
|
|
" text-align: right;\n",
|
|
" }\n",
|
|
"</style>\n",
|
|
"<table border=\"1\" class=\"dataframe\">\n",
|
|
" <thead>\n",
|
|
" <tr style=\"text-align: right;\">\n",
|
|
" <th>Differences</th>\n",
|
|
" <th>min</th>\n",
|
|
" <th>50%</th>\n",
|
|
" <th>mean</th>\n",
|
|
" <th>max</th>\n",
|
|
" <th>total</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>secs</th>\n",
|
|
" <td>0.00001</td>\n",
|
|
" <td>0.00082</td>\n",
|
|
" <td>0.000569</td>\n",
|
|
" <td>0.01325</td>\n",
|
|
" <td>0.08255</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>ms</th>\n",
|
|
" <td>0.00040</td>\n",
|
|
" <td>0.81790</td>\n",
|
|
" <td>0.570063</td>\n",
|
|
" <td>13.24950</td>\n",
|
|
" <td>82.65920</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
"Differences min 50% mean max total\n",
|
|
"secs 0.00001 0.00082 0.000569 0.01325 0.08255\n",
|
|
"ms 0.00040 0.81790 0.570063 13.24950 82.65920"
|
|
]
|
|
},
|
|
"execution_count": 12,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"diffdf = (tal_statsdf - pta_statsdf).abs().T\n",
|
|
"diffdf.columns.name = \"Differences\"\n",
|
|
"diffdf"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"id": "25dc4fbc-9c04-4530-ae2d-283522ec8179",
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": []
|
|
}
|
|
],
|
|
"metadata": {
|
|
"kernelspec": {
|
|
"display_name": "Python 3 (ipykernel)",
|
|
"language": "python",
|
|
"name": "python3"
|
|
},
|
|
"language_info": {
|
|
"codemirror_mode": {
|
|
"name": "ipython",
|
|
"version": 3
|
|
},
|
|
"file_extension": ".py",
|
|
"mimetype": "text/x-python",
|
|
"name": "python",
|
|
"nbconvert_exporter": "python",
|
|
"pygments_lexer": "ipython3",
|
|
"version": "3.9.1"
|
|
}
|
|
},
|
|
"nbformat": 4,
|
|
"nbformat_minor": 5
|
|
}
|