hikyuu 2.6.5__py3-none-win_amd64.whl → 2.6.7__py3-none-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (146) hide show
  1. hikyuu/__init__.py +16 -0
  2. hikyuu/__init__.pyi +484 -474
  3. hikyuu/analysis/__init__.pyi +466 -445
  4. hikyuu/analysis/analysis.pyi +467 -446
  5. hikyuu/core.pyi +468 -447
  6. hikyuu/cpp/boost_date_time-mt.dll +0 -0
  7. hikyuu/cpp/boost_serialization-mt.dll +0 -0
  8. hikyuu/cpp/boost_wserialization-mt.dll +0 -0
  9. hikyuu/cpp/core310.pyd +0 -0
  10. hikyuu/cpp/core310.pyi +1070 -878
  11. hikyuu/cpp/core311.pyd +0 -0
  12. hikyuu/cpp/core311.pyi +1070 -878
  13. hikyuu/cpp/core312.pyd +0 -0
  14. hikyuu/cpp/core312.pyi +1070 -878
  15. hikyuu/cpp/core313.pyd +0 -0
  16. hikyuu/cpp/core313.pyi +1070 -876
  17. hikyuu/cpp/core39.pyd +0 -0
  18. hikyuu/cpp/core39.pyi +1070 -878
  19. hikyuu/cpp/hikyuu.dll +0 -0
  20. hikyuu/cpp/hikyuu.lib +0 -0
  21. hikyuu/cpp/i18n/__init__.py +0 -0
  22. hikyuu/cpp/i18n/zh_CN/__init__.py +0 -0
  23. hikyuu/cpp/i18n/zh_CN/hikyuu.mo +0 -0
  24. hikyuu/cpp/sqlite3.dll +0 -0
  25. hikyuu/data/clickhouse_upgrade/__init__.py +1 -0
  26. hikyuu/data/clickhouse_upgrade/createdb.sql +1085 -0
  27. hikyuu/data/common_clickhouse.py +465 -0
  28. hikyuu/data/em_block_to_clickhouse.py +120 -0
  29. hikyuu/data/hku_config_template.py +58 -3
  30. hikyuu/data/pytdx_finance_to_clickhouse.py +107 -0
  31. hikyuu/data/pytdx_to_clickhouse.py +841 -0
  32. hikyuu/data/pytdx_to_mysql.py +4 -4
  33. hikyuu/data/pytdx_weight_to_clickhouse.py +191 -0
  34. hikyuu/data/tdx_to_clickhouse.py +448 -0
  35. hikyuu/data/tdx_to_h5.py +1 -1
  36. hikyuu/data/zh_bond10_to_clickhouse.py +49 -0
  37. hikyuu/draw/__init__.pyi +1 -1
  38. hikyuu/draw/drawplot/bokeh_draw.pyi +479 -471
  39. hikyuu/draw/drawplot/echarts_draw.py +9 -8
  40. hikyuu/draw/drawplot/echarts_draw.pyi +479 -471
  41. hikyuu/draw/drawplot/matplotlib_draw.py +3 -3
  42. hikyuu/draw/drawplot/matplotlib_draw.pyi +479 -471
  43. hikyuu/draw/elder.pyi +6 -6
  44. hikyuu/draw/kaufman.py +1 -1
  45. hikyuu/draw/kaufman.pyi +10 -10
  46. hikyuu/draw/volume.pyi +5 -5
  47. hikyuu/examples/notebook/000-Index.ipynb +1 -1
  48. hikyuu/examples/notebook/001-overview.ipynb +78 -63
  49. hikyuu/examples/notebook/002-HowToGetStock.ipynb +259 -40
  50. hikyuu/examples/notebook/003-HowToGetKDataAndDraw.ipynb +49 -41
  51. hikyuu/examples/notebook/004-IndicatorOverview.ipynb +29 -29
  52. hikyuu/examples/notebook/005-Drawplot.ipynb +66 -37
  53. hikyuu/examples/notebook/006-TradeManager.ipynb +808 -61
  54. hikyuu/examples/notebook/007-SystemDetails.ipynb +23 -23
  55. hikyuu/examples/notebook/009-RealData.ipynb +3 -3
  56. hikyuu/examples/notebook/010-Portfolio.ipynb +761 -122
  57. hikyuu/extend.py +15 -100
  58. hikyuu/extend.pyi +478 -493
  59. hikyuu/fetcher/stock/zh_stock_a_pytdx.py +9 -20
  60. hikyuu/fetcher/stock/zh_stock_a_qmt.py +4 -5
  61. hikyuu/fetcher/stock/zh_stock_a_sina_qq.py +16 -60
  62. hikyuu/flat/Spot.py +96 -200
  63. hikyuu/gui/HikyuuTDX.py +134 -7
  64. hikyuu/gui/data/ImportBlockInfoTask.py +11 -0
  65. hikyuu/gui/data/ImportHistoryFinanceTask.py +15 -1
  66. hikyuu/gui/data/ImportPytdxTimeToH5Task.py +11 -1
  67. hikyuu/gui/data/ImportPytdxToH5Task.py +13 -1
  68. hikyuu/gui/data/ImportPytdxTransToH5Task.py +11 -1
  69. hikyuu/gui/data/ImportTdxToH5Task.py +13 -1
  70. hikyuu/gui/data/ImportWeightToSqliteTask.py +14 -1
  71. hikyuu/gui/data/ImportZhBond10Task.py +11 -0
  72. hikyuu/gui/data/MainWindow.py +210 -135
  73. hikyuu/gui/data/UsePytdxImportToH5Thread.py +45 -26
  74. hikyuu/gui/data/UseTdxImportToH5Thread.py +19 -1
  75. hikyuu/gui/dataserver.py +12 -4
  76. hikyuu/gui/spot_server.py +30 -40
  77. hikyuu/gui/start_qmt.py +20 -3
  78. hikyuu/hub.pyi +6 -6
  79. hikyuu/include/hikyuu/DataType.h +2 -0
  80. hikyuu/include/hikyuu/KQuery.h +22 -28
  81. hikyuu/include/hikyuu/MarketInfo.h +1 -1
  82. hikyuu/include/hikyuu/Stock.h +15 -3
  83. hikyuu/include/hikyuu/StockManager.h +12 -3
  84. hikyuu/include/hikyuu/StockTypeInfo.h +6 -0
  85. hikyuu/include/hikyuu/TransRecord.h +2 -8
  86. hikyuu/include/hikyuu/data_driver/kdata/mysql/KRecordTable.h +1 -0
  87. hikyuu/include/hikyuu/doc.h +4 -0
  88. hikyuu/include/hikyuu/global/GlobalSpotAgent.h +1 -1
  89. hikyuu/include/hikyuu/global/SpotRecord.h +15 -31
  90. hikyuu/include/hikyuu/global/agent/spot_generated.h +48 -232
  91. hikyuu/include/hikyuu/global/schedule/scheduler.h +1 -1
  92. hikyuu/include/hikyuu/indicator/Indicator.h +37 -0
  93. hikyuu/include/hikyuu/lang.h +27 -0
  94. hikyuu/include/hikyuu/plugin/KDataToHdf5Importer.h +9 -1
  95. hikyuu/include/hikyuu/plugin/dataserver.h +26 -1
  96. hikyuu/include/hikyuu/plugin/device.h +2 -1
  97. hikyuu/include/hikyuu/plugin/hkuextra.h +56 -0
  98. hikyuu/include/hikyuu/plugin/interface/DataDriverPluginInterface.h +27 -0
  99. hikyuu/include/hikyuu/plugin/interface/DataServerPluginInterface.h +2 -1
  100. hikyuu/include/hikyuu/plugin/interface/DevicePluginInterface.h +1 -1
  101. hikyuu/include/hikyuu/plugin/interface/HkuExtraPluginInterface.h +38 -0
  102. hikyuu/include/hikyuu/plugin/interface/ImportKDataToHdf5PluginInterface.h +13 -1
  103. hikyuu/include/hikyuu/plugin/interface/plugins.h +4 -0
  104. hikyuu/include/hikyuu/python/pybind_utils.h +9 -0
  105. hikyuu/include/hikyuu/strategy/Strategy.h +0 -9
  106. hikyuu/include/hikyuu/trade_manage/TradeRecord.h +1 -1
  107. hikyuu/include/hikyuu/utilities/config.h +0 -2
  108. hikyuu/include/hikyuu/utilities/os.h +9 -0
  109. hikyuu/include/hikyuu/utilities/plugin/PluginLoader.h +2 -1
  110. hikyuu/include/hikyuu/version.h +4 -4
  111. hikyuu/include/hikyuu/view/MarketView.h +59 -0
  112. hikyuu/indicator/__init__.py +0 -1
  113. hikyuu/indicator/indicator.py +14 -53
  114. hikyuu/plugin/backtest.dll +0 -0
  115. hikyuu/plugin/clickhousedriver.dll +0 -0
  116. hikyuu/plugin/dataserver.dll +0 -0
  117. hikyuu/plugin/device.dll +0 -0
  118. hikyuu/plugin/extind.dll +0 -0
  119. hikyuu/plugin/hkuextra.dll +0 -0
  120. hikyuu/plugin/import2hdf5.dll +0 -0
  121. hikyuu/plugin/tmreport.dll +0 -0
  122. hikyuu/test/test_init.py +59 -0
  123. hikyuu/test/test_real_tdx_import.py +336 -0
  124. hikyuu/test/test_tdx_import.py +315 -0
  125. hikyuu/test/test_tdx_real_data_import.py +281 -0
  126. hikyuu/trade_manage/__init__.pyi +479 -471
  127. hikyuu/trade_manage/trade.py +4 -65
  128. hikyuu/trade_manage/trade.pyi +479 -483
  129. hikyuu/trade_sys/__init__.py +11 -0
  130. hikyuu/util/__init__.py +1 -0
  131. hikyuu/util/__init__.pyi +4 -4
  132. hikyuu/util/check.py +8 -0
  133. hikyuu/util/check.pyi +5 -1
  134. hikyuu/util/singleton.pyi +1 -1
  135. {hikyuu-2.6.5.dist-info → hikyuu-2.6.7.dist-info}/METADATA +7 -5
  136. {hikyuu-2.6.5.dist-info → hikyuu-2.6.7.dist-info}/RECORD +142 -124
  137. {hikyuu-2.6.5.dist-info → hikyuu-2.6.7.dist-info}/top_level.txt +4 -3
  138. hikyuu/include/hikyuu/global/agent/hikyuu/flat/__init__.py +0 -1
  139. hikyuu/include/hikyuu/utilities/mo/__init__.py +0 -1
  140. hikyuu/include/hikyuu/utilities/mo/mo.h +0 -48
  141. hikyuu/indicator/talib_wrap.py +0 -1273
  142. /hikyuu/include/hikyuu/utilities/{mo/moFileReader.h → moFileReader.h} +0 -0
  143. /hikyuu/include/hikyuu/{global/agent/hikyuu → view}/__init__.py +0 -0
  144. {hikyuu-2.6.5.dist-info → hikyuu-2.6.7.dist-info}/LICENSE +0 -0
  145. {hikyuu-2.6.5.dist-info → hikyuu-2.6.7.dist-info}/WHEEL +0 -0
  146. {hikyuu-2.6.5.dist-info → hikyuu-2.6.7.dist-info}/entry_points.txt +0 -0
@@ -1,1273 +0,0 @@
1
- #!/usr/bin/python
2
- # -*- coding: utf8 -*-
3
- # cp936
4
- #
5
- # The MIT License (MIT)
6
- #
7
- # Copyright (c) 2017 fasiondog
8
- #
9
- # Permission is hereby granted, free of charge, to any person obtaining a copy
10
- # of this software and associated documentation files (the "Software"), to deal
11
- # in the Software without restriction, including without limitation the rights
12
- # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
13
- # copies of the Software, and to permit persons to whom the Software is
14
- # furnished to do so, subject to the following conditions:
15
- #
16
- # The above copyright notice and this permission notice shall be included in all
17
- # copies or substantial portions of the Software.
18
- #
19
- # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20
- # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21
- # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22
- # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23
- # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
24
- # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
25
- # SOFTWARE.
26
-
27
- # ===============================================================================
28
- # 作者:fasiondog
29
- # 历史:1)20170923, Added by fasiondog
30
- # ===============================================================================
31
-
32
- from .indicator import Indicator, IndicatorImp
33
-
34
- try:
35
- import talib
36
- import talib.abstract as ta
37
- import numpy as np
38
-
39
- def tawrap_init(self, tafunc, name, params, result_num=1, prices=None):
40
- super(self.__class__, self).__init__(name, result_num)
41
- for k, v in params.items():
42
- self.set_param(k, v)
43
- self._tafunc = tafunc
44
- self._prices = prices
45
- self._params = params
46
- self._result_num = result_num
47
-
48
- def tawrap_calculate(self, ind):
49
- result_num = self.get_result_num()
50
-
51
- if result_num < 1:
52
- print("error: result_num must be >= 1!")
53
- return
54
-
55
- if not self._prices:
56
- if self.name == "PYTA_OBV":
57
- if ind.get_result_num() < 2:
58
- print("error: result_num must be >= 2!")
59
- return
60
- inputs = {'close': ind.get_result(0).to_np(), 'volume': ind.get_result(1).to_np()}
61
- elif self.name in ("PYTA_BETA", "PYTA_CORREL"):
62
- if ind.get_result_num() < 2:
63
- print("error: result_num must be >= 2!")
64
- return
65
- inputs = {'high': ind.get_result(0).to_np(), 'low': ind.get_result(1).to_np()}
66
- else:
67
- inputs = {'close': ind.to_np()}
68
- else:
69
- if ind.name != 'KDATA':
70
- print("error: ind must KDATA")
71
- return
72
-
73
- inputs = {
74
- 'open': ind.get_result(0).to_np(),
75
- 'high': ind.get_result(1).to_np(),
76
- 'low': ind.get_result(2).to_np(),
77
- 'close': ind.get_result(3).to_np(),
78
- 'volume': ind.get_result(5).to_np()
79
- }
80
-
81
- params = self.get_parameter()
82
- param_names = params.get_name_list()
83
- func_params = {}
84
- for name in param_names:
85
- if name != "kdata":
86
- func_params[name] = self.get_param(name)
87
-
88
- self._tafunc.set_parameters(func_params)
89
-
90
- outputs = self._tafunc(inputs, prices=self._prices) if self._prices else self._tafunc(inputs)
91
- if result_num == 1:
92
- for i, val in enumerate(outputs):
93
- if not np.isnan(val):
94
- self._set(float(val), i)
95
- self.set_discard(self._tafunc.lookback)
96
-
97
- else:
98
- for i, out in enumerate(outputs):
99
- for j, val in enumerate(out):
100
- if not np.isnan(val):
101
- self._set(float(val), j, i)
102
- self.set_discard(self._tafunc.lookback)
103
-
104
- def check_all_true(self):
105
- return True
106
-
107
- def tawrap_support_ind_param(self):
108
- return False
109
-
110
- def tawrap_clone(self):
111
- return crtTaIndicatorImp(
112
- self._tafunc, self.name, self._params, self._result_num, self._prices, check=self.check
113
- )
114
-
115
- def crtTaIndicatorImp(tafunc, name, params={}, result_num=1, prices=None, check=check_all_true):
116
- meta_x = type(
117
- name, (IndicatorImp, ), {
118
- '__init__': tawrap_init,
119
- 'check': check,
120
- '_clone': tawrap_clone,
121
- '_calculate': tawrap_calculate,
122
- 'support_ind_param': tawrap_support_ind_param,
123
- }
124
- )
125
- return meta_x(tafunc, name, params, result_num, prices)
126
-
127
- def PYTA_AD(ind=None):
128
- imp = crtTaIndicatorImp(ta.AD, 'PYTA_AD', prices=['high', 'low', 'close', 'volume'])
129
- return Indicator(imp)(ind) if ind else Indicator(imp)
130
-
131
- PYTA_AD.__doc__ = talib.AD.__doc__
132
-
133
- def PYTA_ADOSC(ind=None, fastperiod=3, slowperiod=10):
134
- imp = crtTaIndicatorImp(
135
- ta.ADOSC,
136
- 'PYTA_ADOSC',
137
- params={
138
- 'fastperiod': fastperiod,
139
- 'slowperiod': slowperiod
140
- },
141
- prices=['high', 'low', 'close', 'volume']
142
- )
143
- return Indicator(imp)(ind) if ind else Indicator(imp)
144
-
145
- PYTA_ADOSC.__doc__ = talib.ADOSC.__doc__
146
-
147
- def PYTA_ADX(ind=None, timeperiod=14):
148
- imp = crtTaIndicatorImp(ta.ADX, 'PYTA_ADX', params={'timeperiod': timeperiod}, prices=['high', 'low', 'close'])
149
- return Indicator(imp)(ind) if ind else Indicator(imp)
150
-
151
- PYTA_ADX.__doc__ = talib.ADX.__doc__
152
-
153
- def PYTA_ADXR(ind=None, timeperiod=14):
154
- imp = crtTaIndicatorImp(ta.ADXR, 'PYTA_ADXR', params={
155
- 'timeperiod': timeperiod}, prices=['high', 'low', 'close'])
156
- return Indicator(imp)(ind) if ind else Indicator(imp)
157
-
158
- PYTA_ADXR.__doc__ = talib.ADXR.__doc__
159
-
160
- def PYTA_APO(ind=None, fastperiod=12, slowperiod=26, matype=talib.MA_Type.SMA):
161
- imp = crtTaIndicatorImp(
162
- ta.APO, 'PYTA_APO', params={
163
- 'fastperiod': fastperiod,
164
- 'slowperiod': slowperiod,
165
- 'matype': matype
166
- }
167
- )
168
- return Indicator(imp)(ind) if ind else Indicator(imp)
169
-
170
- PYTA_APO.__doc__ = talib.APO.__doc__
171
-
172
- def PYTA_AROON(ind=None, timeperiod=14):
173
- imp = crtTaIndicatorImp(
174
- ta.AROON, 'PYTA_AROON', result_num=2, params={'timeperiod': timeperiod}, prices=['high', 'low']
175
- )
176
- return Indicator(imp)(ind) if ind else Indicator(imp)
177
-
178
- PYTA_AROON.__doc__ = talib.AROON.__doc__
179
-
180
- def PYTA_AROONOSC(ind=None, timeperiod=14):
181
- imp = crtTaIndicatorImp(
182
- ta.AROONOSC, 'PYTA_AROONOSC', result_num=1, params={'timeperiod': timeperiod}, prices=['high', 'low']
183
- )
184
- return Indicator(imp)(ind) if ind else Indicator(imp)
185
-
186
- PYTA_AROONOSC.__doc__ = talib.AROONOSC.__doc__
187
-
188
- def PYTA_ATR(ind=None, timeperiod=14):
189
- imp = crtTaIndicatorImp(
190
- ta.ATR, 'PYTA_ATR', result_num=1, params={'timeperiod': timeperiod}, prices=['high', 'low', 'close']
191
- )
192
- return Indicator(imp)(ind) if ind else Indicator(imp)
193
-
194
- PYTA_ATR.__doc__ = talib.ATR.__doc__
195
-
196
- def PYTA_AVGPRICE(ind=None, timeperiod=14):
197
- imp = crtTaIndicatorImp(
198
- ta.AVGPRICE,
199
- 'PYTA_AVGPRICE',
200
- result_num=1,
201
- # params={'timeperiod': timeperiod},
202
- prices=['open', 'high', 'low', 'close']
203
- )
204
- return Indicator(imp)(ind) if ind else Indicator(imp)
205
-
206
- PYTA_AVGPRICE.__doc__ = talib.AVGPRICE.__doc__
207
-
208
- def PYTA_BBANDS(ind=None, timeperiod=14, nbdevup=2, nbdevdn=2, matype=talib.MA_Type.SMA):
209
- imp = crtTaIndicatorImp(
210
- ta.BBANDS,
211
- 'PYTA_BBANDS',
212
- result_num=3,
213
- params={
214
- 'timeperiod': timeperiod,
215
- 'nbdevup': nbdevup,
216
- 'nbdevdn': nbdevdn,
217
- 'matype': matype
218
- }
219
- )
220
- return Indicator(imp)(ind) if ind else Indicator(imp)
221
-
222
- PYTA_BBANDS.__doc__ = talib.BBANDS.__doc__
223
-
224
- def PYTA_BOP(ind=None):
225
- imp = crtTaIndicatorImp(ta.BOP, 'PYTA_BOP', result_num=1, prices=['open', 'high', 'low', 'close'])
226
- return Indicator(imp)(ind) if ind else Indicator(imp)
227
-
228
- PYTA_BOP.__doc__ = talib.BOP.__doc__
229
-
230
- def PYTA_CCI(ind=None, timeperiod=14):
231
- imp = crtTaIndicatorImp(
232
- ta.CCI, 'PYTA_CCI', result_num=1, params={'timeperiod': timeperiod}, prices=['high', 'low', 'close']
233
- )
234
- return Indicator(imp)(ind) if ind else Indicator(imp)
235
-
236
- PYTA_CCI.__doc__ = talib.CCI.__doc__
237
-
238
- def PYTA_CMO(ind=None, timeperiod=14):
239
- imp = crtTaIndicatorImp(ta.CMO, 'PYTA_CMO', result_num=1, params={'timeperiod': timeperiod})
240
- return Indicator(imp)(ind) if ind else Indicator(imp)
241
-
242
- PYTA_CMO.__doc__ = talib.CMO.__doc__
243
-
244
- def PYTA_DEMA(ind=None, timeperiod=30):
245
- imp = crtTaIndicatorImp(ta.DEMA, 'PYTA_DEMA', result_num=1, params={'timeperiod': timeperiod})
246
- return Indicator(imp)(ind) if ind else Indicator(imp)
247
-
248
- PYTA_DEMA.__doc__ = talib.DEMA.__doc__
249
-
250
- def PYTA_DX(ind=None, timeperiod=14):
251
- imp = crtTaIndicatorImp(
252
- ta.DX, 'PYTA_DX', result_num=1, params={'timeperiod': timeperiod}, prices=['high', 'low', 'close']
253
- )
254
- return Indicator(imp)(ind) if ind else Indicator(imp)
255
-
256
- PYTA_DX.__doc__ = talib.DX.__doc__
257
-
258
- def PYTA_EMA(ind=None, timeperiod=30):
259
- imp = crtTaIndicatorImp(ta.EMA, 'PYTA_EMA', result_num=1, params={'timeperiod': timeperiod})
260
- return Indicator(imp)(ind) if ind else Indicator(imp)
261
-
262
- PYTA_EMA.__doc__ = talib.EMA.__doc__
263
-
264
- def PYTA_HT_DCPERIOD(ind=None):
265
- imp = crtTaIndicatorImp(ta.HT_DCPERIOD, 'PYTA_HT_DCPERIOD', result_num=1)
266
- return Indicator(imp)(ind) if ind else Indicator(imp)
267
-
268
- PYTA_HT_DCPERIOD.__doc__ = talib.HT_DCPERIOD.__doc__
269
-
270
- def PYTA_HT_DCPHASE(ind=None):
271
- imp = crtTaIndicatorImp(ta.HT_DCPHASE, 'PYTA_HT_DCPHASE', result_num=1)
272
- return Indicator(imp)(ind) if ind else Indicator(imp)
273
-
274
- PYTA_HT_DCPHASE.__doc__ = talib.HT_DCPHASE.__doc__
275
-
276
- def PYTA_HT_PHASOR(ind=None):
277
- imp = crtTaIndicatorImp(ta.HT_PHASOR, 'PYTA_HT_PHASOR', result_num=2)
278
- return Indicator(imp)(ind) if ind else Indicator(imp)
279
-
280
- PYTA_HT_PHASOR.__doc__ = talib.HT_PHASOR.__doc__
281
-
282
- def PYTA_HT_SINE(ind=None):
283
- imp = crtTaIndicatorImp(ta.HT_SINE, 'PYTA_HT_SINE', result_num=2)
284
- return Indicator(imp)(ind) if ind else Indicator(imp)
285
-
286
- PYTA_HT_SINE.__doc__ = talib.HT_SINE.__doc__
287
-
288
- def PYTA_HT_TRENDLINE(ind=None):
289
- imp = crtTaIndicatorImp(ta.HT_TRENDLINE, 'PYTA_HT_TRENDLINE', result_num=1)
290
- return Indicator(imp)(ind) if ind else Indicator(imp)
291
-
292
- PYTA_HT_TRENDLINE.__doc__ = talib.HT_TRENDLINE.__doc__
293
-
294
- def PYTA_HT_TRENDMODE(ind=None):
295
- imp = crtTaIndicatorImp(ta.HT_TRENDMODE, 'PYTA_HT_TRENDMODE', result_num=1)
296
- return Indicator(imp)(ind) if ind else Indicator(imp)
297
-
298
- PYTA_HT_TRENDMODE.__doc__ = talib.HT_TRENDMODE.__doc__
299
-
300
- def PYTA_KAMA(ind=None, timeperiod=30):
301
- imp = crtTaIndicatorImp(ta.KAMA, 'PYTA_KAMA', result_num=1, params={'timeperiod': timeperiod})
302
- return Indicator(imp)(ind) if ind else Indicator(imp)
303
-
304
- PYTA_KAMA.__doc__ = talib.KAMA.__doc__
305
-
306
- def PYTA_LINEARREG(ind=None, timeperiod=14):
307
- imp = crtTaIndicatorImp(ta.LINEARREG, 'PYTA_LINEARREG', result_num=1, params={'timeperiod': timeperiod})
308
- return Indicator(imp)(ind) if ind else Indicator(imp)
309
-
310
- PYTA_LINEARREG.__doc__ = talib.LINEARREG.__doc__
311
-
312
- def PYTA_LINEARREG_ANGLE(ind=None, timeperiod=14):
313
- imp = crtTaIndicatorImp(
314
- ta.LINEARREG_ANGLE, 'PYTA_LINEARREG_ANGLE', result_num=1, params={'timeperiod': timeperiod}
315
- )
316
- return Indicator(imp)(ind) if ind else Indicator(imp)
317
-
318
- PYTA_LINEARREG_ANGLE.__doc__ = talib.LINEARREG_ANGLE.__doc__
319
-
320
- def PYTA_LINEARREG_INTERCEPT(ind=None, timeperiod=14):
321
- imp = crtTaIndicatorImp(
322
- ta.LINEARREG_INTERCEPT, 'PYTA_LINEARREG_INTERCEPT', result_num=1, params={'timeperiod': timeperiod}
323
- )
324
- return Indicator(imp)(ind) if ind else Indicator(imp)
325
-
326
- PYTA_LINEARREG_INTERCEPT.__doc__ = talib.LINEARREG_INTERCEPT.__doc__
327
-
328
- def PYTA_LINEARREG_SLOPE(ind=None, timeperiod=14):
329
- imp = crtTaIndicatorImp(
330
- ta.LINEARREG_SLOPE, 'PYTA_LINEARREG_SLOPE', result_num=1, params={'timeperiod': timeperiod}
331
- )
332
- return Indicator(imp)(ind) if ind else Indicator(imp)
333
-
334
- PYTA_LINEARREG_SLOPE.__doc__ = talib.LINEARREG_SLOPE.__doc__
335
-
336
- def PYTA_MA(ind=None, timeperiod=30, matype=talib.MA_Type.SMA):
337
- imp = crtTaIndicatorImp(ta.MA, 'PYTA_MA', result_num=1, params={'timeperiod': timeperiod, 'matype': matype})
338
- return Indicator(imp)(ind) if ind else Indicator(imp)
339
-
340
- PYTA_MA.__doc__ = talib.MA.__doc__
341
-
342
- def PYTA_MACD(ind=None, fastperiod=12, slowperiod=26, signalperiod=9):
343
- imp = crtTaIndicatorImp(
344
- ta.MACD,
345
- 'PYTA_MACD',
346
- result_num=3,
347
- params={
348
- 'fastperiod': fastperiod,
349
- 'slowperiod': slowperiod,
350
- 'signalperiod': signalperiod
351
- }
352
- )
353
- return Indicator(imp)(ind) if ind else Indicator(imp)
354
-
355
- PYTA_MACD.__doc__ = talib.MACD.__doc__
356
-
357
- def PYTA_MACDEXT(
358
- ind=None,
359
- fastperiod=12,
360
- fastmatype=talib.MA_Type.SMA,
361
- slowperiod=26,
362
- slowmatype=talib.MA_Type.SMA,
363
- signalperiod=9,
364
- signalmatype=talib.MA_Type.SMA
365
- ):
366
- imp = crtTaIndicatorImp(
367
- ta.MACDEXT,
368
- 'PYTA_MACDEXT',
369
- result_num=3,
370
- params={
371
- 'fastperiod': fastperiod,
372
- 'fastmatype': fastmatype,
373
- 'slowperiod': slowperiod,
374
- 'slowmatype': slowmatype,
375
- 'signalperiod': signalperiod,
376
- 'signalmatype': signalmatype
377
- }
378
- )
379
- return Indicator(imp)(ind) if ind else Indicator(imp)
380
-
381
- PYTA_MACDEXT.__doc__ = talib.MACDEXT.__doc__
382
-
383
- def PYTA_MACDFIX(ind=None, signalperiod=9):
384
- imp = crtTaIndicatorImp(ta.MACDFIX, 'PYTA_MACDFIX', result_num=3, params={'signalperiod': signalperiod})
385
- return Indicator(imp)(ind) if ind else Indicator(imp)
386
-
387
- PYTA_MACDFIX.__doc__ = talib.MACDFIX.__doc__
388
-
389
- def PYTA_MAMA(ind=None, fastlimit=0.5, slowlimit=0.05):
390
- imp = crtTaIndicatorImp(
391
- ta.MAMA, 'PYTA_MAMA', result_num=2, params={
392
- 'fastlimit': fastlimit,
393
- 'slowlimit': slowlimit
394
- }
395
- )
396
- return Indicator(imp)(ind) if ind else Indicator(imp)
397
-
398
- PYTA_MAMA.__doc__ = talib.MAMA.__doc__
399
-
400
- def PYTA_MAX(ind=None, timeperiod=30):
401
- imp = crtTaIndicatorImp(ta.MAX, 'PYTA_MAX', result_num=1, params={'timeperiod': timeperiod})
402
- return Indicator(imp)(ind) if ind else Indicator(imp)
403
-
404
- PYTA_MAX.__doc__ = talib.MAX.__doc__
405
-
406
- def PYTA_MAXINDEX(ind=None, timeperiod=30):
407
- imp = crtTaIndicatorImp(ta.MAXINDEX, 'PYTA_MAXINDEX', result_num=1, params={'timeperiod': timeperiod})
408
- return Indicator(imp)(ind) if ind else Indicator(imp)
409
-
410
- PYTA_MAXINDEX.__doc__ = talib.MAXINDEX.__doc__
411
-
412
- def PYTA_MEDPRICE(ind=None):
413
- imp = crtTaIndicatorImp(ta.MEDPRICE, 'PYTA_MEDPRICE', result_num=1, prices=['high', 'low'])
414
- return Indicator(imp)(ind) if ind else Indicator(imp)
415
-
416
- PYTA_MEDPRICE.__doc__ = talib.MEDPRICE.__doc__
417
-
418
- def PYTA_MIDPOINT(ind=None, timeperiod=14):
419
- imp = crtTaIndicatorImp(ta.MIDPOINT, 'PYTA_MIDPOINT', result_num=1, params={'timeperiod': timeperiod})
420
- return Indicator(imp)(ind) if ind else Indicator(imp)
421
-
422
- PYTA_MIDPOINT.__doc__ = talib.MIDPRICE.__doc__
423
-
424
- def PYTA_MIDPRICE(ind=None, timeperiod=14):
425
- imp = crtTaIndicatorImp(
426
- ta.MIDPRICE, 'PYTA_MIDPRICE', result_num=1, params={'timeperiod': timeperiod}, prices=['high', 'low']
427
- )
428
- return Indicator(imp)(ind) if ind else Indicator(imp)
429
-
430
- PYTA_MIDPRICE.__doc__ = talib.MIDPRICE.__doc__
431
-
432
- def PYTA_MIN(ind=None, timeperiod=30):
433
- imp = crtTaIndicatorImp(ta.MIN, 'PYTA_MIN', result_num=1, params={'timeperiod': timeperiod})
434
- return Indicator(imp)(ind) if ind else Indicator(imp)
435
-
436
- PYTA_MIN.__doc__ = talib.MIN.__doc__
437
-
438
- def PYTA_MININDEX(ind=None, timeperiod=30):
439
- imp = crtTaIndicatorImp(ta.MININDEX, 'PYTA_MININDEX', result_num=1, params={'timeperiod': timeperiod})
440
- return Indicator(imp)(ind) if ind else Indicator(imp)
441
-
442
- PYTA_MININDEX.__doc__ = talib.MININDEX.__doc__
443
-
444
- def PYTA_MINMAX(ind=None, timeperiod=30):
445
- imp = crtTaIndicatorImp(ta.MINMAX, 'PYTA_MINMAX', result_num=2, params={'timeperiod': timeperiod})
446
- return Indicator(imp)(ind) if ind else Indicator(imp)
447
-
448
- PYTA_MINMAX.__doc__ = talib.MINMAX.__doc__
449
-
450
- def PYTA_MINMAXINDEX(ind=None, timeperiod=30):
451
- imp = crtTaIndicatorImp(ta.MINMAXINDEX, 'PYTA_MINMAXINDEX', result_num=2, params={'timeperiod': timeperiod})
452
- return Indicator(imp)(ind) if ind else Indicator(imp)
453
-
454
- PYTA_MINMAXINDEX.__doc__ = talib.MINMAXINDEX.__doc__
455
-
456
- def PYTA_MINUS_DI(ind=None, timeperiod=14):
457
- imp = crtTaIndicatorImp(
458
- ta.MINUS_DI,
459
- 'PYTA_MINUS_DI',
460
- result_num=1,
461
- params={'timeperiod': timeperiod},
462
- prices=['high', 'low', 'close']
463
- )
464
- return Indicator(imp)(ind) if ind else Indicator(imp)
465
-
466
- PYTA_MINUS_DI.__doc__ = talib.MINUS_DI.__doc__
467
-
468
- def PYTA_MINUS_DM(ind=None, timeperiod=14):
469
- imp = crtTaIndicatorImp(
470
- ta.MINUS_DM, 'PYTA_MINUS_DM', result_num=1, params={'timeperiod': timeperiod}, prices=['high', 'low']
471
- )
472
- return Indicator(imp)(ind) if ind else Indicator(imp)
473
-
474
- PYTA_MINUS_DM.__doc__ = talib.MINUS_DM.__doc__
475
-
476
- def PYTA_MOM(ind=None, timeperiod=10):
477
- imp = crtTaIndicatorImp(ta.MOM, 'PYTA_MOM', result_num=1, params={'timeperiod': timeperiod})
478
- return Indicator(imp)(ind) if ind else Indicator(imp)
479
-
480
- PYTA_MOM.__doc__ = talib.MOM.__doc__
481
-
482
- def PYTA_NATR(ind=None, timeperiod=14):
483
- imp = crtTaIndicatorImp(
484
- ta.NATR, 'PYTA_NATR', result_num=1, params={'timeperiod': timeperiod}, prices=['high', 'low', 'close']
485
- )
486
- return Indicator(imp)(ind) if ind else Indicator(imp)
487
-
488
- PYTA_NATR.__doc__ = talib.NATR.__doc__
489
-
490
- def PYTA_PLUS_DI(ind=None, timeperiod=14):
491
- imp = crtTaIndicatorImp(
492
- ta.PLUS_DI, 'PYTA_PLUS_DI', result_num=1, params={'timeperiod': timeperiod}, prices=['high', 'low', 'close']
493
- )
494
- return Indicator(imp)(ind) if ind else Indicator(imp)
495
-
496
- PYTA_PLUS_DI.__doc__ = talib.PLUS_DI.__doc__
497
-
498
- def PYTA_PLUS_DM(ind=None, timeperiod=14):
499
- imp = crtTaIndicatorImp(
500
- ta.PLUS_DM, 'PYTA_PLUS_DM', result_num=1, params={'timeperiod': timeperiod}, prices=['high', 'low']
501
- )
502
- return Indicator(imp)(ind) if ind else Indicator(imp)
503
-
504
- PYTA_PLUS_DM.__doc__ = talib.PLUS_DM.__doc__
505
-
506
- def PYTA_PPO(ind=None, fastperiod=12, slowperiod=26, matype=talib.MA_Type.SMA):
507
- imp = crtTaIndicatorImp(
508
- ta.PPO,
509
- 'PYTA_PPO',
510
- result_num=1,
511
- params={
512
- 'fastperiod': fastperiod,
513
- 'slowperiod': slowperiod,
514
- 'matype': matype
515
- }
516
- )
517
- return Indicator(imp)(ind) if ind else Indicator(imp)
518
-
519
- PYTA_PPO.__doc__ = talib.PPO.__doc__
520
-
521
- def PYTA_ROC(ind=None, timeperiod=10):
522
- imp = crtTaIndicatorImp(ta.ROC, 'PYTA_ROC', result_num=1, params={'timeperiod': timeperiod})
523
- return Indicator(imp)(ind) if ind else Indicator(imp)
524
-
525
- PYTA_ROC.__doc__ = talib.ROC.__doc__
526
-
527
- def PYTA_ROCP(ind=None, timeperiod=10):
528
- imp = crtTaIndicatorImp(ta.ROCP, 'PYTA_ROCP', result_num=1, params={'timeperiod': timeperiod})
529
- return Indicator(imp)(ind) if ind else Indicator(imp)
530
-
531
- PYTA_ROCP.__doc__ = talib.ROCP.__doc__
532
-
533
- def PYTA_ROCR(ind=None, timeperiod=10):
534
- imp = crtTaIndicatorImp(ta.ROCR, 'PYTA_ROCR', result_num=1, params={'timeperiod': timeperiod})
535
- return Indicator(imp)(ind) if ind else Indicator(imp)
536
-
537
- PYTA_ROCR.__doc__ = talib.ROCR.__doc__
538
-
539
- def PYTA_ROCR100(ind=None, timeperiod=10):
540
- imp = crtTaIndicatorImp(ta.ROCR100, 'PYTA_ROCR100', result_num=1, params={'timeperiod': timeperiod})
541
- return Indicator(imp)(ind) if ind else Indicator(imp)
542
-
543
- PYTA_ROCR100.__doc__ = talib.ROCR100.__doc__
544
-
545
- def PYTA_RSI(ind=None, timeperiod=14):
546
- imp = crtTaIndicatorImp(ta.RSI, 'PYTA_RSI', result_num=1, params={'timeperiod': timeperiod})
547
- return Indicator(imp)(ind) if ind else Indicator(imp)
548
-
549
- PYTA_RSI.__doc__ = talib.RSI.__doc__
550
-
551
- def PYTA_SAR(ind=None, acceleration=0.02, maximum=0.2):
552
- imp = crtTaIndicatorImp(
553
- ta.SAR,
554
- 'PYTA_SAR',
555
- result_num=1,
556
- params={
557
- 'acceleration': acceleration,
558
- 'maximum': maximum
559
- },
560
- prices=['high', 'low']
561
- )
562
- return Indicator(imp)(ind) if ind else Indicator(imp)
563
-
564
- PYTA_SAR.__doc__ = talib.SAR.__doc__
565
-
566
- def PYTA_SAREXT(
567
- ind=None,
568
- startvalue=0.,
569
- offsetonreverse=0.,
570
- accelerationinitlong=0.02,
571
- accelerationlong=0.02,
572
- accelerationmaxlong=0.02,
573
- accelerationinitshort=0.02,
574
- accelerationshort=0.02,
575
- accelerationmaxshort=0.02
576
- ):
577
- imp = crtTaIndicatorImp(
578
- ta.SAREXT,
579
- 'PYTA_SAREXT',
580
- result_num=1,
581
- params={
582
- 'startvalue': startvalue,
583
- 'offsetonreverse': offsetonreverse,
584
- 'accelerationinitlong': accelerationinitlong,
585
- 'accelerationlong': accelerationlong,
586
- 'accelerationmaxlong': accelerationmaxlong,
587
- 'accelerationinitshort': accelerationinitshort,
588
- 'accelerationshort': accelerationshort,
589
- 'accelerationmaxshort': accelerationmaxshort
590
- },
591
- prices=['high', 'low']
592
- )
593
- return Indicator(imp)(ind) if ind else Indicator(imp)
594
-
595
- PYTA_SAREXT.__doc__ = talib.SAREXT.__doc__
596
-
597
- def PYTA_SMA(ind=None, timeperiod=30):
598
- imp = crtTaIndicatorImp(ta.SMA, 'PYTA_SMA', result_num=1, params={'timeperiod': timeperiod})
599
- return Indicator(imp)(ind) if ind else Indicator(imp)
600
-
601
- PYTA_SMA.__doc__ = talib.SMA.__doc__
602
-
603
- def PYTA_STDDEV(ind=None, timeperiod=5, nbdev=1.0):
604
- imp = crtTaIndicatorImp(ta.STDDEV, 'PYTA_STDDEV', result_num=1, params={
605
- 'timeperiod': timeperiod, 'nbdev': nbdev})
606
- return Indicator(imp)(ind) if ind else Indicator(imp)
607
-
608
- PYTA_STDDEV.__doc__ = talib.STDDEV.__doc__
609
-
610
- def PYTA_STOCH(
611
- ind=None,
612
- fastk_period=5,
613
- slowk_period=3,
614
- slowk_matype=talib.MA_Type.SMA,
615
- slowd_period=3,
616
- slowd_matype=talib.MA_Type.SMA
617
- ):
618
- imp = crtTaIndicatorImp(
619
- ta.STOCH,
620
- 'PYTA_STOCH',
621
- result_num=2,
622
- params={
623
- 'fastk_period': fastk_period,
624
- 'slowk_period': slowk_period,
625
- 'slowk_matype': slowk_matype,
626
- 'slowd_period': slowd_period,
627
- 'slowd_matype': slowd_matype
628
- },
629
- prices=['high', 'low', 'close']
630
- )
631
- return Indicator(imp)(ind) if ind else Indicator(imp)
632
-
633
- PYTA_STOCH.__doc__ = talib.STOCH.__doc__
634
-
635
- def PYTA_STOCHF(ind=None, fastk_period=5, fastd_period=3, fastd_matype=talib.MA_Type.SMA):
636
- imp = crtTaIndicatorImp(
637
- ta.STOCHF,
638
- 'PYTA_STOCHF',
639
- result_num=2,
640
- params={
641
- 'fastk_period': fastk_period,
642
- 'fastd_period': fastd_period,
643
- 'fastd_matype': fastd_matype
644
- },
645
- prices=['high', 'low', 'close']
646
- )
647
- return Indicator(imp)(ind) if ind else Indicator(imp)
648
-
649
- PYTA_STOCHF.__doc__ = talib.STOCHF.__doc__
650
-
651
- def PYTA_STOCHRSI(ind=None, timeperiod=14, fastk_period=5, fastd_period=3, fastd_matype=talib.MA_Type.SMA):
652
- imp = crtTaIndicatorImp(
653
- ta.STOCHRSI,
654
- 'PYTA_STOCHRSI',
655
- result_num=2,
656
- params={
657
- 'timeperiod': timeperiod,
658
- 'fastk_period': fastk_period,
659
- 'fastd_period': fastd_period,
660
- 'fastd_matype': fastd_matype
661
- }
662
- )
663
- return Indicator(imp)(ind) if ind else Indicator(imp)
664
-
665
- PYTA_STOCHRSI.__doc__ = talib.STOCHRSI.__doc__
666
-
667
- def PYTA_SUM(ind=None, timeperiod=30):
668
- imp = crtTaIndicatorImp(ta.SUM, 'PYTA_SUM', result_num=1, params={'timeperiod': timeperiod})
669
- return Indicator(imp)(ind) if ind else Indicator(imp)
670
-
671
- PYTA_SUM.__doc__ = talib.SUM.__doc__
672
-
673
- def PYTA_T3(ind=None, timeperiod=5, vfactor=0.7):
674
- imp = crtTaIndicatorImp(ta.T3, 'PYTA_T3', result_num=1, params={'timeperiod': timeperiod, 'vfactor': vfactor})
675
- return Indicator(imp)(ind) if ind else Indicator(imp)
676
-
677
- PYTA_T3.__doc__ = talib.T3.__doc__
678
-
679
- def PYTA_TEMA(ind=None, timeperiod=30):
680
- imp = crtTaIndicatorImp(ta.TEMA, 'PYTA_TEMA', result_num=1, params={'timeperiod': timeperiod})
681
- return Indicator(imp)(ind) if ind else Indicator(imp)
682
-
683
- PYTA_TEMA.__doc__ = talib.TEMA.__doc__
684
-
685
- def PYTA_TRANGE(ind=None):
686
- imp = crtTaIndicatorImp(ta.TRANGE, 'PYTA_TRANGE', result_num=1, prices=['high', 'low', 'close'])
687
- return Indicator(imp)(ind) if ind else Indicator(imp)
688
-
689
- PYTA_TRANGE.__doc__ = talib.TRANGE.__doc__
690
-
691
- def PYTA_TRIMA(ind=None, timeperiod=30):
692
- imp = crtTaIndicatorImp(ta.TRIMA, 'PYTA_TRIMA', result_num=1, params={'timeperiod': timeperiod})
693
- return Indicator(imp)(ind) if ind else Indicator(imp)
694
-
695
- PYTA_TRIMA.__doc__ = talib.TRIMA.__doc__
696
-
697
- def PYTA_TRIX(ind=None, timeperiod=30):
698
- imp = crtTaIndicatorImp(ta.TRIX, 'PYTA_TRIX', result_num=1, params={'timeperiod': timeperiod})
699
- return Indicator(imp)(ind) if ind else Indicator(imp)
700
-
701
- PYTA_TRIX.__doc__ = talib.TRIX.__doc__
702
-
703
- def PYTA_TSF(ind=None, timeperiod=14):
704
- imp = crtTaIndicatorImp(ta.TSF, 'PYTA_TSF', result_num=1, params={'timeperiod': timeperiod})
705
- return Indicator(imp)(ind) if ind else Indicator(imp)
706
-
707
- PYTA_TSF.__doc__ = talib.TSF.__doc__
708
-
709
- def PYTA_TYPPRICE(ind=None, timeperiod=14):
710
- imp = crtTaIndicatorImp(ta.TYPPRICE, 'PYTA_TYPPRICE', result_num=1, prices=['high', 'low', 'close'])
711
- return Indicator(imp)(ind) if ind else Indicator(imp)
712
-
713
- PYTA_TYPPRICE.__doc__ = talib.TYPPRICE.__doc__
714
-
715
- def PYTA_ULTOSC(ind=None, timeperiod1=7, timeperiod2=14, timeperiod3=28):
716
- imp = crtTaIndicatorImp(
717
- ta.ULTOSC,
718
- 'PYTA_ULTOSC',
719
- result_num=1,
720
- params={
721
- 'timeperiod1': timeperiod1,
722
- 'timeperiod2': timeperiod2,
723
- 'timeperiod3': timeperiod3,
724
- },
725
- prices=['high', 'low', 'close']
726
- )
727
- return Indicator(imp)(ind) if ind else Indicator(imp)
728
-
729
- PYTA_ULTOSC.__doc__ = talib.ULTOSC.__doc__
730
-
731
- def PYTA_VAR(ind=None, timeperiod=5, nbdev=1.):
732
- imp = crtTaIndicatorImp(ta.VAR, 'PYTA_VAR', result_num=1, params={'timeperiod': timeperiod, 'nbdev': nbdev})
733
- return Indicator(imp)(ind) if ind else Indicator(imp)
734
-
735
- PYTA_VAR.__doc__ = talib.VAR.__doc__
736
-
737
- def PYTA_WCLPRICE(ind=None):
738
- imp = crtTaIndicatorImp(ta.WCLPRICE, 'PYTA_WCLPRICE', result_num=1, prices=['high', 'low', 'close'])
739
- return Indicator(imp)(ind) if ind else Indicator(imp)
740
-
741
- PYTA_WCLPRICE.__doc__ = talib.WCLPRICE.__doc__
742
-
743
- def PYTA_WILLR(ind=None, timeperiod=14):
744
- imp = crtTaIndicatorImp(
745
- ta.WILLR, 'PYTA_WILLR', result_num=1, params={'timeperiod': timeperiod}, prices=['high', 'low', 'close']
746
- )
747
- return Indicator(imp)(ind) if ind else Indicator(imp)
748
-
749
- PYTA_WILLR.__doc__ = talib.WILLR.__doc__
750
-
751
- def PYTA_WMA(ind=None, timeperiod=30):
752
- imp = crtTaIndicatorImp(ta.WMA, 'PYTA_WMA', result_num=1, params={'timeperiod': timeperiod})
753
- return Indicator(imp)(ind) if ind else Indicator(imp)
754
-
755
- PYTA_WMA.__doc__ = talib.WMA.__doc__
756
-
757
- def PYTA_CDL2CROWS(ind=None):
758
- imp = crtTaIndicatorImp(ta.CDL2CROWS, 'PYTA_CDL2CROWS', result_num=1, prices=['open', 'high', 'low', 'close'])
759
- return Indicator(imp)(ind) if ind else Indicator(imp)
760
-
761
- PYTA_CDL2CROWS.__doc__ = talib.CDL2CROWS.__doc__
762
-
763
- def PYTA_CDL3BLACKCROWS(ind=None):
764
- imp = crtTaIndicatorImp(
765
- ta.CDL3BLACKCROWS, 'PYTA_CDL3BLACKCROWS', result_num=1, prices=['open', 'high', 'low', 'close']
766
- )
767
- return Indicator(imp)(ind) if ind else Indicator(imp)
768
-
769
- PYTA_CDL3BLACKCROWS.__doc__ = talib.CDL3BLACKCROWS.__doc__
770
-
771
- def PYTA_CDL3INSIDE(ind=None):
772
- imp = crtTaIndicatorImp(ta.CDL3INSIDE, 'PYTA_CDL3INSIDE', result_num=1, prices=['open', 'high', 'low', 'close'])
773
- return Indicator(imp)(ind) if ind else Indicator(imp)
774
-
775
- PYTA_CDL3INSIDE.__doc__ = talib.CDL3INSIDE.__doc__
776
-
777
- def PYTA_CDL3LINESTRIKE(ind=None):
778
- imp = crtTaIndicatorImp(
779
- ta.CDL3LINESTRIKE, 'PYTA_CDL3LINESTRIKE', result_num=1, prices=['open', 'high', 'low', 'close']
780
- )
781
- return Indicator(imp)(ind) if ind else Indicator(imp)
782
-
783
- PYTA_CDL3LINESTRIKE.__doc__ = talib.CDL3LINESTRIKE.__doc__
784
-
785
- def PYTA_CDL3OUTSIDE(ind=None):
786
- imp = crtTaIndicatorImp(ta.CDL3OUTSIDE, 'PYTA_CDL3OUTSIDE', result_num=1,
787
- prices=['open', 'high', 'low', 'close'])
788
- return Indicator(imp)(ind) if ind else Indicator(imp)
789
-
790
- PYTA_CDL3OUTSIDE.__doc__ = talib.CDL3OUTSIDE.__doc__
791
-
792
- def PYTA_CDL3STARSINSOUTH(ind=None):
793
- imp = crtTaIndicatorImp(
794
- ta.CDL3STARSINSOUTH, 'PYTA_CDL3STARSINSOUTH', result_num=1, prices=['open', 'high', 'low', 'close']
795
- )
796
- return Indicator(imp)(ind) if ind else Indicator(imp)
797
-
798
- PYTA_CDL3STARSINSOUTH.__doc__ = talib.CDL3STARSINSOUTH.__doc__
799
-
800
- def PYTA_CDL3WHITESOLDIERS(ind=None):
801
- imp = crtTaIndicatorImp(
802
- ta.CDL3WHITESOLDIERS, 'PYTA_CDL3WHITESOLDIERS', result_num=1, prices=['open', 'high', 'low', 'close']
803
- )
804
- return Indicator(imp)(ind) if ind else Indicator(imp)
805
-
806
- PYTA_CDL3WHITESOLDIERS.__doc__ = talib.CDL3WHITESOLDIERS.__doc__
807
-
808
- def PYTA_CDLABANDONEDBABY(ind=None, penetration=0.3):
809
- imp = crtTaIndicatorImp(
810
- ta.CDLABANDONEDBABY,
811
- 'PYTA_CDLABANDONEDBABY',
812
- result_num=1,
813
- params={'penetration': penetration},
814
- prices=['open', 'high', 'low', 'close']
815
- )
816
- return Indicator(imp)(ind) if ind else Indicator(imp)
817
-
818
- PYTA_CDLABANDONEDBABY.__doc__ = talib.CDLABANDONEDBABY.__doc__
819
-
820
- def PYTA_CDLADVANCEBLOCK(ind=None):
821
- imp = crtTaIndicatorImp(
822
- ta.CDLADVANCEBLOCK, 'PYTA_CDLADVANCEBLOCK', result_num=1, prices=['open', 'high', 'low', 'close']
823
- )
824
- return Indicator(imp)(ind) if ind else Indicator(imp)
825
-
826
- PYTA_CDLADVANCEBLOCK = talib.CDLADVANCEBLOCK.__doc__
827
-
828
- def PYTA_CDLBELTHOLD(ind=None):
829
- imp = crtTaIndicatorImp(ta.CDLBELTHOLD, 'PYTA_CDLBELTHOLD', result_num=1,
830
- prices=['open', 'high', 'low', 'close'])
831
- return Indicator(imp)(ind) if ind else Indicator(imp)
832
-
833
- PYTA_CDLBELTHOLD.__doc__ = talib.CDLBELTHOLD.__doc__
834
-
835
- def PYTA_CDLBREAKAWAY(ind=None):
836
- imp = crtTaIndicatorImp(
837
- ta.CDLBREAKAWAY, 'PYTA_CDLBREAKAWAY', result_num=1, prices=['open', 'high', 'low', 'close']
838
- )
839
- return Indicator(imp)(ind) if ind else Indicator(imp)
840
-
841
- PYTA_CDLBREAKAWAY.__doc__ = talib.CDLBREAKAWAY.__doc__
842
-
843
- def PYTA_CDLCLOSINGMARUBOZU(ind=None):
844
- imp = crtTaIndicatorImp(
845
- ta.CDLCLOSINGMARUBOZU, 'PYTA_CDLCLOSINGMARUBOZU', result_num=1, prices=['open', 'high', 'low', 'close']
846
- )
847
- return Indicator(imp)(ind) if ind else Indicator(imp)
848
-
849
- PYTA_CDLCLOSINGMARUBOZU.__doc__ = talib.CDLCLOSINGMARUBOZU.__doc__
850
-
851
- def PYTA_CDLCONCEALBABYSWALL(ind=None):
852
- imp = crtTaIndicatorImp(
853
- ta.CDLCONCEALBABYSWALL, 'PYTA_CDLCONCEALBABYSWALL', result_num=1, prices=['open', 'high', 'low', 'close']
854
- )
855
- return Indicator(imp)(ind) if ind else Indicator(imp)
856
-
857
- PYTA_CDLCONCEALBABYSWALL.__doc__ = talib.CDLCONCEALBABYSWALL.__doc__
858
-
859
- def PYTA_CDLCOUNTERATTACK(ind=None):
860
- imp = crtTaIndicatorImp(
861
- ta.CDLCOUNTERATTACK, 'PYTA_CDLCOUNTERATTACK', result_num=1, prices=['open', 'high', 'low', 'close']
862
- )
863
- return Indicator(imp)(ind) if ind else Indicator(imp)
864
-
865
- PYTA_CDLCOUNTERATTACK.__doc__ = talib.CDLCOUNTERATTACK.__doc__
866
-
867
- def PYTA_CDLDARKCLOUDCOVER(ind=None, penetration=0.5):
868
- imp = crtTaIndicatorImp(
869
- ta.CDLDARKCLOUDCOVER,
870
- 'PYTA_CDLDARKCLOUDCOVER',
871
- result_num=1,
872
- params={'penetration': penetration},
873
- prices=['open', 'high', 'low', 'close']
874
- )
875
- return Indicator(imp)(ind) if ind else Indicator(imp)
876
-
877
- PYTA_CDLDARKCLOUDCOVER.__doc__ = talib.CDLDARKCLOUDCOVER.__doc__
878
-
879
- def PYTA_CDLDOJI(ind=None):
880
- imp = crtTaIndicatorImp(ta.CDLDOJI, 'PYTA_CDLDOJI', result_num=1, prices=['open', 'high', 'low', 'close'])
881
- return Indicator(imp)(ind) if ind else Indicator(imp)
882
-
883
- PYTA_CDLDOJI.__doc__ = talib.CDLDOJI.__doc__
884
-
885
- def PYTA_CDLDOJISTAR(ind=None):
886
- imp = crtTaIndicatorImp(ta.CDLDOJISTAR, 'PYTA_CDLDOJISTAR', result_num=1,
887
- prices=['open', 'high', 'low', 'close'])
888
- return Indicator(imp)(ind) if ind else Indicator(imp)
889
-
890
- PYTA_CDLDOJISTAR.__doc__ = talib.CDLDOJISTAR.__doc__
891
-
892
- def PYTA_CDLDRAGONFLYDOJI(ind=None):
893
- imp = crtTaIndicatorImp(
894
- ta.CDLDRAGONFLYDOJI, 'PYTA_CDLDRAGONFLYDOJI', result_num=1, prices=['open', 'high', 'low', 'close']
895
- )
896
- return Indicator(imp)(ind) if ind else Indicator(imp)
897
-
898
- PYTA_CDLDRAGONFLYDOJI.__doc__ = talib.CDLDRAGONFLYDOJI.__doc__
899
-
900
- def PYTA_CDLENGULFING(ind=None):
901
- imp = crtTaIndicatorImp(
902
- ta.CDLENGULFING, 'PYTA_CDLENGULFING', result_num=1, prices=['open', 'high', 'low', 'close']
903
- )
904
- return Indicator(imp)(ind) if ind else Indicator(imp)
905
-
906
- PYTA_CDLENGULFING.__doc__ = talib.CDLENGULFING.__doc__
907
-
908
- def PYTA_CDLEVENINGDOJISTAR(ind=None, penetration=0.3):
909
- imp = crtTaIndicatorImp(
910
- ta.CDLEVENINGDOJISTAR,
911
- 'PYTA_CDLEVENINGDOJISTAR',
912
- result_num=1,
913
- params={'penetration': penetration},
914
- prices=['open', 'high', 'low', 'close']
915
- )
916
- return Indicator(imp)(ind) if ind else Indicator(imp)
917
-
918
- PYTA_CDLEVENINGDOJISTAR.__doc__ = talib.CDLEVENINGDOJISTAR.__doc__
919
-
920
- def PYTA_CDLEVENINGSTAR(ind=None, penetration=0.3):
921
- imp = crtTaIndicatorImp(
922
- ta.CDLEVENINGSTAR,
923
- 'PYTA_CDLEVENINGSTAR',
924
- result_num=1,
925
- params={'penetration': penetration},
926
- prices=['open', 'high', 'low', 'close']
927
- )
928
- return Indicator(imp)(ind) if ind else Indicator(imp)
929
-
930
- PYTA_CDLEVENINGSTAR.__doc__ = talib.CDLEVENINGSTAR.__doc__
931
-
932
- def PYTA_CDLGAPSIDESIDEWHITE(ind=None):
933
- imp = crtTaIndicatorImp(
934
- ta.CDLGAPSIDESIDEWHITE, 'PYTA_CDLGAPSIDESIDEWHITE', result_num=1, prices=['open', 'high', 'low', 'close']
935
- )
936
- return Indicator(imp)(ind) if ind else Indicator(imp)
937
-
938
- PYTA_CDLGAPSIDESIDEWHITE.__doc__ = talib.CDLGAPSIDESIDEWHITE.__doc__
939
-
940
- def PYTA_CDLGRAVESTONEDOJI(ind=None):
941
- imp = crtTaIndicatorImp(
942
- ta.CDLGRAVESTONEDOJI, 'PYTA_CDLGRAVESTONEDOJI', result_num=1, prices=['open', 'high', 'low', 'close']
943
- )
944
- return Indicator(imp)(ind) if ind else Indicator(imp)
945
-
946
- PYTA_CDLGRAVESTONEDOJI.__doc__ = talib.CDLGRAVESTONEDOJI.__doc__
947
-
948
- def PYTA_CDLHAMMER(ind=None):
949
- imp = crtTaIndicatorImp(ta.CDLHAMMER, 'PYTA_CDLHAMMER', result_num=1, prices=['open', 'high', 'low', 'close'])
950
- return Indicator(imp)(ind) if ind else Indicator(imp)
951
-
952
- PYTA_CDLHAMMER.__doc__ = talib.CDLHAMMER.__doc__
953
-
954
- def PYTA_CDLHANGINGMAN(ind=None):
955
- imp = crtTaIndicatorImp(
956
- ta.CDLHANGINGMAN, 'PYTA_CDLHANGINGMAN', result_num=1, prices=['open', 'high', 'low', 'close']
957
- )
958
- return Indicator(imp)(ind) if ind else Indicator(imp)
959
-
960
- PYTA_CDLHANGINGMAN.__doc__ = talib.CDLHANGINGMAN.__doc__
961
-
962
- def PYTA_CDLHARAMI(ind=None):
963
- imp = crtTaIndicatorImp(
964
- ta.CDLHARAMI,
965
- 'PYTA_CDLHARAMI',
966
- result_num=1,
967
- # params={'penetration': penetration},
968
- prices=['open', 'high', 'low', 'close']
969
- )
970
- return Indicator(imp)(ind) if ind else Indicator(imp)
971
-
972
- PYTA_CDLHARAMI.__doc__ = talib.CDLHARAMI.__doc__
973
-
974
- def PYTA_CDLHARAMICROSS(ind=None):
975
- imp = crtTaIndicatorImp(
976
- ta.CDLHARAMICROSS, 'PYTA_CDLHARAMICROSS', result_num=1, prices=['open', 'high', 'low', 'close']
977
- )
978
- return Indicator(imp)(ind) if ind else Indicator(imp)
979
-
980
- PYTA_CDLHARAMICROSS.__doc__ = talib.CDLHARAMICROSS.__doc__
981
-
982
- def PYTA_CDLHIGHWAVE(ind=None):
983
- imp = crtTaIndicatorImp(ta.CDLHIGHWAVE, 'PYTA_CDLHIGHWAVE', result_num=1,
984
- prices=['open', 'high', 'low', 'close'])
985
- return Indicator(imp)(ind) if ind else Indicator(imp)
986
-
987
- PYTA_CDLHIGHWAVE.__doc__ = talib.CDLHIGHWAVE.__doc__
988
-
989
- def PYTA_CDLHIKKAKE(ind=None):
990
- imp = crtTaIndicatorImp(ta.CDLHIKKAKE, 'PYTA_CDLHIKKAKE', result_num=1, prices=['open', 'high', 'low', 'close'])
991
- return Indicator(imp)(ind) if ind else Indicator(imp)
992
-
993
- PYTA_CDLHIKKAKE.__doc__ = talib.CDLHIKKAKE.__doc__
994
-
995
- def PYTA_CDLHIKKAKEMOD(ind=None):
996
- imp = crtTaIndicatorImp(
997
- ta.CDLHIKKAKEMOD, 'PYTA_CDLHIKKAKEMOD', result_num=1, prices=['open', 'high', 'low', 'close']
998
- )
999
- return Indicator(imp)(ind) if ind else Indicator(imp)
1000
-
1001
- PYTA_CDLHIKKAKEMOD.__doc__ = talib.CDLHIKKAKEMOD.__doc__
1002
-
1003
- def PYTA_CDLHOMINGPIGEON(ind=None):
1004
- imp = crtTaIndicatorImp(
1005
- ta.CDLHOMINGPIGEON, 'PYTA_CDLHOMINGPIGEON', result_num=1, prices=['open', 'high', 'low', 'close']
1006
- )
1007
- return Indicator(imp)(ind) if ind else Indicator(imp)
1008
-
1009
- PYTA_CDLHOMINGPIGEON.__doc__ = talib.CDLHOMINGPIGEON.__doc__
1010
-
1011
- def PYTA_CDLIDENTICAL3CROWS(ind=None):
1012
- imp = crtTaIndicatorImp(
1013
- ta.CDLIDENTICAL3CROWS, 'PYTA_CDLIDENTICAL3CROWS', result_num=1, prices=['open', 'high', 'low', 'close']
1014
- )
1015
- return Indicator(imp)(ind) if ind else Indicator(imp)
1016
-
1017
- PYTA_CDLIDENTICAL3CROWS.__doc__ = talib.CDLIDENTICAL3CROWS.__doc__
1018
-
1019
- def PYTA_CDLINNECK(ind=None):
1020
- imp = crtTaIndicatorImp(ta.CDLINNECK, 'PYTA_CDLINNECK', result_num=1, prices=['open', 'high', 'low', 'close'])
1021
- return Indicator(imp)(ind) if ind else Indicator(imp)
1022
-
1023
- PYTA_CDLINNECK.__doc__ = talib.CDLINNECK.__doc__
1024
-
1025
- def PYTA_CDLINVERTEDHAMMER(ind=None):
1026
- imp = crtTaIndicatorImp(
1027
- ta.CDLINVERTEDHAMMER, 'PYTA_CDLINVERTEDHAMMER', result_num=1, prices=['open', 'high', 'low', 'close']
1028
- )
1029
- return Indicator(imp)(ind) if ind else Indicator(imp)
1030
-
1031
- PYTA_CDLINVERTEDHAMMER.__doc__ = talib.CDLINVERTEDHAMMER.__doc__
1032
-
1033
- def PYTA_CDLKICKING(ind=None):
1034
- imp = crtTaIndicatorImp(ta.CDLKICKING, 'PYTA_CDLKICKING', result_num=1, prices=['open', 'high', 'low', 'close'])
1035
- return Indicator(imp)(ind) if ind else Indicator(imp)
1036
-
1037
- PYTA_CDLKICKING.__doc__ = talib.CDLKICKING.__doc__
1038
-
1039
- def PYTA_CDLKICKINGBYLENGTH(ind=None):
1040
- imp = crtTaIndicatorImp(
1041
- ta.CDLKICKINGBYLENGTH, 'PYTA_CDLKICKINGBYLENGTH', result_num=1, prices=['open', 'high', 'low', 'close']
1042
- )
1043
- return Indicator(imp)(ind) if ind else Indicator(imp)
1044
-
1045
- PYTA_CDLKICKINGBYLENGTH.__doc__ = talib.CDLKICKINGBYLENGTH.__doc__
1046
-
1047
- def PYTA_CDLLADDERBOTTOM(ind=None):
1048
- imp = crtTaIndicatorImp(
1049
- ta.CDLLADDERBOTTOM, 'PYTA_CDLLADDERBOTTOM', result_num=1, prices=['open', 'high', 'low', 'close']
1050
- )
1051
- return Indicator(imp)(ind) if ind else Indicator(imp)
1052
-
1053
- PYTA_CDLLADDERBOTTOM.__doc__ = talib.CDLLADDERBOTTOM.__doc__
1054
-
1055
- def PYTA_CDLLONGLEGGEDDOJI(ind=None):
1056
- imp = crtTaIndicatorImp(
1057
- ta.CDLLONGLEGGEDDOJI, 'PYTA_CDLLONGLEGGEDDOJI', result_num=1, prices=['open', 'high', 'low', 'close']
1058
- )
1059
- return Indicator(imp)(ind) if ind else Indicator(imp)
1060
-
1061
- PYTA_CDLLONGLEGGEDDOJI.__doc__ = talib.CDLLONGLEGGEDDOJI.__doc__
1062
-
1063
- def PYTA_CDLLONGLINE(ind=None):
1064
- imp = crtTaIndicatorImp(ta.CDLLONGLINE, 'PYTA_CDLLONGLINE', result_num=1,
1065
- prices=['open', 'high', 'low', 'close'])
1066
- return Indicator(imp)(ind) if ind else Indicator(imp)
1067
-
1068
- PYTA_CDLLONGLINE.__doc__ = talib.CDLLONGLINE.__doc__
1069
-
1070
- def PYTA_CDLMARUBOZU(ind=None):
1071
- imp = crtTaIndicatorImp(ta.CDLMARUBOZU, 'PYTA_CDLMARUBOZU', result_num=1,
1072
- prices=['open', 'high', 'low', 'close'])
1073
- return Indicator(imp)(ind) if ind else Indicator(imp)
1074
-
1075
- PYTA_CDLMARUBOZU.__doc__ = talib.CDLMARUBOZU.__doc__
1076
-
1077
- def PYTA_CDLMATCHINGLOW(ind=None):
1078
- imp = crtTaIndicatorImp(
1079
- ta.CDLMATCHINGLOW, 'PYTA_CDLMATCHINGLOW', result_num=1, prices=['open', 'high', 'low', 'close']
1080
- )
1081
- return Indicator(imp)(ind) if ind else Indicator(imp)
1082
-
1083
- PYTA_CDLMATCHINGLOW.__doc__ = talib.CDLMATCHINGLOW.__doc__
1084
-
1085
- def PYTA_CDLMATHOLD(ind=None, penetration=0.5):
1086
- imp = crtTaIndicatorImp(
1087
- ta.CDLMATHOLD,
1088
- 'PYTA_CDLMATHOLD',
1089
- result_num=1,
1090
- params={'penetration': penetration},
1091
- prices=['open', 'high', 'low', 'close']
1092
- )
1093
- return Indicator(imp)(ind) if ind else Indicator(imp)
1094
-
1095
- PYTA_CDLMATHOLD.__doc__ = talib.CDLMATHOLD.__doc__
1096
-
1097
- def PYTA_CDLMORNINGDOJISTAR(ind=None, penetration=0.3):
1098
- imp = crtTaIndicatorImp(
1099
- ta.CDLMORNINGDOJISTAR,
1100
- 'PYTA_CDLMORNINGDOJISTAR',
1101
- result_num=1,
1102
- params={'penetration': penetration},
1103
- prices=['open', 'high', 'low', 'close']
1104
- )
1105
- return Indicator(imp)(ind) if ind else Indicator(imp)
1106
-
1107
- PYTA_CDLMORNINGDOJISTAR.__doc__ = talib.CDLMORNINGDOJISTAR.__doc__
1108
-
1109
- def PYTA_CDLMORNINGSTAR(ind=None, penetration=0.3):
1110
- imp = crtTaIndicatorImp(
1111
- ta.CDLMORNINGSTAR,
1112
- 'PYTA_CDLMORNINGSTAR',
1113
- result_num=1,
1114
- params={'penetration': penetration},
1115
- prices=['open', 'high', 'low', 'close']
1116
- )
1117
- return Indicator(imp)(ind) if ind else Indicator(imp)
1118
-
1119
- PYTA_CDLMORNINGSTAR.__doc__ = talib.CDLMORNINGSTAR.__doc__
1120
-
1121
- def PYTA_CDLONNECK(ind=None):
1122
- imp = crtTaIndicatorImp(ta.CDLONNECK, 'PYTA_CDLONNECK', result_num=1, prices=['open', 'high', 'low', 'close'])
1123
- return Indicator(imp)(ind) if ind else Indicator(imp)
1124
-
1125
- PYTA_CDLONNECK.__doc__ = talib.CDLONNECK.__doc__
1126
-
1127
- def PYTA_CDLPIERCING(ind=None):
1128
- imp = crtTaIndicatorImp(ta.CDLPIERCING, 'PYTA_CDLPIERCING', result_num=1,
1129
- prices=['open', 'high', 'low', 'close'])
1130
- return Indicator(imp)(ind) if ind else Indicator(imp)
1131
-
1132
- PYTA_CDLPIERCING.__doc__ = talib.CDLPIERCING.__doc__
1133
-
1134
- def PYTA_CDLRICKSHAWMAN(ind=None):
1135
- imp = crtTaIndicatorImp(
1136
- ta.CDLRICKSHAWMAN, 'PYTA_CDLRICKSHAWMAN', result_num=1, prices=['open', 'high', 'low', 'close']
1137
- )
1138
- return Indicator(imp)(ind) if ind else Indicator(imp)
1139
-
1140
- PYTA_CDLRICKSHAWMAN.__doc__ = talib.CDLRICKSHAWMAN.__doc__
1141
-
1142
- def PYTA_CDLRISEFALL3METHODS(ind=None):
1143
- imp = crtTaIndicatorImp(
1144
- ta.CDLRISEFALL3METHODS, 'PYTA_CDLRISEFALL3METHODS', result_num=1, prices=['open', 'high', 'low', 'close']
1145
- )
1146
- return Indicator(imp)(ind) if ind else Indicator(imp)
1147
-
1148
- PYTA_CDLRISEFALL3METHODS.__doc__ = talib.CDLRISEFALL3METHODS.__doc__
1149
-
1150
- def PYTA_CDLSEPARATINGLINES(ind=None):
1151
- imp = crtTaIndicatorImp(
1152
- ta.CDLSEPARATINGLINES, 'PYTA_CDLSEPARATINGLINES', result_num=1, prices=['open', 'high', 'low', 'close']
1153
- )
1154
- return Indicator(imp)(ind) if ind else Indicator(imp)
1155
-
1156
- PYTA_CDLSEPARATINGLINES.__doc__ = talib.CDLSEPARATINGLINES.__doc__
1157
-
1158
- def PYTA_CDLSHOOTINGSTAR(ind=None):
1159
- imp = crtTaIndicatorImp(
1160
- ta.CDLSHOOTINGSTAR, 'PYTA_CDLSHOOTINGSTAR', result_num=1, prices=['open', 'high', 'low', 'close']
1161
- )
1162
- return Indicator(imp)(ind) if ind else Indicator(imp)
1163
-
1164
- PYTA_CDLSHOOTINGSTAR.__doc__ = talib.CDLSHOOTINGSTAR.__doc__
1165
-
1166
- def PYTA_CDLSHORTLINE(ind=None):
1167
- imp = crtTaIndicatorImp(
1168
- ta.CDLSHORTLINE, 'PYTA_CDLSHORTLINE', result_num=1, prices=['open', 'high', 'low', 'close']
1169
- )
1170
- return Indicator(imp)(ind) if ind else Indicator(imp)
1171
-
1172
- PYTA_CDLSHORTLINE.__doc__ = talib.CDLSHORTLINE.__doc__
1173
-
1174
- def PYTA_CDLSPINNINGTOP(ind=None):
1175
- imp = crtTaIndicatorImp(
1176
- ta.CDLSPINNINGTOP, 'PYTA_CDLSPINNINGTOP', result_num=1, prices=['open', 'high', 'low', 'close']
1177
- )
1178
- return Indicator(imp)(ind) if ind else Indicator(imp)
1179
-
1180
- PYTA_CDLSPINNINGTOP.__doc__ = talib.CDLSPINNINGTOP.__doc__
1181
-
1182
- def PYTA_CDLSTALLEDPATTERN(ind=None):
1183
- imp = crtTaIndicatorImp(
1184
- ta.CDLSTALLEDPATTERN, 'PYTA_CDLSTALLEDPATTERN', result_num=1, prices=['open', 'high', 'low', 'close']
1185
- )
1186
- return Indicator(imp)(ind) if ind else Indicator(imp)
1187
-
1188
- PYTA_CDLSTALLEDPATTERN.__doc__ = talib.CDLSTALLEDPATTERN.__doc__
1189
-
1190
- def PYTA_CDLSTICKSANDWICH(ind=None):
1191
- imp = crtTaIndicatorImp(
1192
- ta.CDLSTICKSANDWICH, 'PYTA_CDLSTICKSANDWICH', result_num=1, prices=['open', 'high', 'low', 'close']
1193
- )
1194
- return Indicator(imp)(ind) if ind else Indicator(imp)
1195
-
1196
- PYTA_CDLSTICKSANDWICH.__doc__ = talib.CDLSTICKSANDWICH.__doc__
1197
-
1198
- def PYTA_CDLTAKURI(ind=None):
1199
- imp = crtTaIndicatorImp(ta.CDLTAKURI, 'PYTA_CDLTAKURI', result_num=1, prices=['open', 'high', 'low', 'close'])
1200
- return Indicator(imp)(ind) if ind else Indicator(imp)
1201
-
1202
- PYTA_CDLTAKURI.__doc__ = talib.CDLTAKURI.__doc__
1203
-
1204
- def PYTA_CDLTASUKIGAP(ind=None):
1205
- imp = crtTaIndicatorImp(
1206
- ta.CDLTASUKIGAP, 'PYTA_CDLTASUKIGAP', result_num=1, prices=['open', 'high', 'low', 'close']
1207
- )
1208
- return Indicator(imp)(ind) if ind else Indicator(imp)
1209
-
1210
- PYTA_CDLTASUKIGAP.__doc__ = talib.CDLTASUKIGAP.__doc__
1211
-
1212
- def PYTA_CDLTHRUSTING(ind=None):
1213
- imp = crtTaIndicatorImp(
1214
- ta.CDLTHRUSTING, 'PYTA_CDLTHRUSTING', result_num=1, prices=['open', 'high', 'low', 'close']
1215
- )
1216
- return Indicator(imp)(ind) if ind else Indicator(imp)
1217
-
1218
- PYTA_CDLTHRUSTING.__doc__ = talib.CDLTHRUSTING.__doc__
1219
-
1220
- def PYTA_CDLTRISTAR(ind=None):
1221
- imp = crtTaIndicatorImp(ta.CDLTRISTAR, 'PYTA_CDLTRISTAR', result_num=1, prices=['open', 'high', 'low', 'close'])
1222
- return Indicator(imp)(ind) if ind else Indicator(imp)
1223
-
1224
- PYTA_CDLTRISTAR.__doc__ = talib.CDLTRISTAR.__doc__
1225
-
1226
- def PYTA_CDLUNIQUE3RIVER(ind=None):
1227
- imp = crtTaIndicatorImp(
1228
- ta.CDLUNIQUE3RIVER, 'PYTA_CDLUNIQUE3RIVER', result_num=1, prices=['open', 'high', 'low', 'close']
1229
- )
1230
- return Indicator(imp)(ind) if ind else Indicator(imp)
1231
-
1232
- PYTA_CDLUNIQUE3RIVER.__doc__ = talib.CDLUNIQUE3RIVER.__doc__
1233
-
1234
- def PYTA_CDLUPSIDEGAP2CROWS(ind=None):
1235
- imp = crtTaIndicatorImp(
1236
- ta.CDLUPSIDEGAP2CROWS, 'PYTA_CDLUPSIDEGAP2CROWS', result_num=1, prices=['open', 'high', 'low', 'close']
1237
- )
1238
- return Indicator(imp)(ind) if ind else Indicator(imp)
1239
-
1240
- PYTA_CDLUPSIDEGAP2CROWS.__doc__ = talib.CDLUPSIDEGAP2CROWS.__doc__
1241
-
1242
- def PYTA_CDLXSIDEGAP3METHODS(ind=None):
1243
- imp = crtTaIndicatorImp(
1244
- ta.CDLXSIDEGAP3METHODS, 'PYTA_CDLXSIDEGAP3METHODS', result_num=1, prices=['open', 'high', 'low', 'close']
1245
- )
1246
- return Indicator(imp)(ind) if ind else Indicator(imp)
1247
-
1248
- PYTA_CDLXSIDEGAP3METHODS.__doc__ = talib.CDLXSIDEGAP3METHODS.__doc__
1249
-
1250
- def PYTA_BETA(ind=None, timeperiod=5):
1251
- imp = crtTaIndicatorImp(ta.BETA, 'PYTA_BETA', result_num=1, params={'timeperiod': timeperiod})
1252
- return Indicator(imp)(ind) if ind else Indicator(imp)
1253
-
1254
- PYTA_BETA.__doc__ = talib.BETA.__doc__
1255
-
1256
- def PYTA_CORREL(ind=None, timeperiod=30):
1257
- imp = crtTaIndicatorImp(ta.CORREL, 'PYTA_CORREL', result_num=1, params={'timeperiod': timeperiod})
1258
- return Indicator(imp)(ind) if ind else Indicator(imp)
1259
-
1260
- PYTA_CORREL.__doc__ = talib.CORREL.__doc__
1261
-
1262
- def PYTA_OBV(ind=None):
1263
- imp = crtTaIndicatorImp(ta.OBV, 'PYTA_OBV', result_num=1)
1264
- return Indicator(imp)(ind) if ind else Indicator(imp)
1265
-
1266
- PYTA_OBV.__doc__ = talib.OBV.__doc__
1267
-
1268
- except:
1269
- pass # 非必须的,talib,不再打印告警,以免误解提问
1270
- # print(
1271
- # "warning: can't import TA-Lib, will be ignored! You can fetch ta-lib "
1272
- # "from https://www.lfd.uci.edu/~gohlke/pythonlibs/#ta-lib"
1273
- # )