hikyuu 2.6.8__py3-none-manylinux2014_aarch64.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 (1066) hide show
  1. hikyuu/LICENSE.txt +21 -0
  2. hikyuu/__init__.py +577 -0
  3. hikyuu/__init__.pyi +872 -0
  4. hikyuu/analysis/__init__.py +14 -0
  5. hikyuu/analysis/__init__.pyi +572 -0
  6. hikyuu/analysis/analysis.py +151 -0
  7. hikyuu/analysis/analysis.pyi +602 -0
  8. hikyuu/config/__init__.py +1 -0
  9. hikyuu/config/block/__init__.py +0 -0
  10. hikyuu/config/block/dybk.ini +5357 -0
  11. hikyuu/config/block/gnbk.ini +50024 -0
  12. hikyuu/config/block/hybk.ini +5464 -0
  13. hikyuu/config/block/self.ini +10 -0
  14. hikyuu/config/block/zsbk.ini +65543 -0
  15. hikyuu/core.py +27 -0
  16. hikyuu/core.pyi +567 -0
  17. hikyuu/cpp/__init__.py +1 -0
  18. hikyuu/cpp/__init__.pyi +3 -0
  19. hikyuu/cpp/core310.pyi +14179 -0
  20. hikyuu/cpp/core310.so +0 -0
  21. hikyuu/cpp/core311.pyi +14179 -0
  22. hikyuu/cpp/core311.so +0 -0
  23. hikyuu/cpp/core312.pyi +14179 -0
  24. hikyuu/cpp/core312.so +0 -0
  25. hikyuu/cpp/core313.pyi +14158 -0
  26. hikyuu/cpp/core313.so +0 -0
  27. hikyuu/cpp/core39.pyi +14179 -0
  28. hikyuu/cpp/core39.so +0 -0
  29. hikyuu/cpp/i18n/__init__.py +0 -0
  30. hikyuu/cpp/i18n/zh_CN/__init__.py +0 -0
  31. hikyuu/cpp/i18n/zh_CN/hikyuu.mo +0 -0
  32. hikyuu/cpp/libcrypto.so.3 +0 -0
  33. hikyuu/cpp/libhikyuu.so +0 -0
  34. hikyuu/cpp/libhku_hdf5.so +0 -0
  35. hikyuu/cpp/libhku_hdf5.so.200 +0 -0
  36. hikyuu/cpp/libhku_hdf5.so.200.2.0 +0 -0
  37. hikyuu/cpp/libhku_hdf5_cpp.so +0 -0
  38. hikyuu/cpp/libhku_hdf5_cpp.so.200 +0 -0
  39. hikyuu/cpp/libhku_hdf5_cpp.so.200.2.0 +0 -0
  40. hikyuu/cpp/libhku_hdf5_hl.so +0 -0
  41. hikyuu/cpp/libhku_hdf5_hl.so.200 +0 -0
  42. hikyuu/cpp/libhku_hdf5_hl.so.200.1.0 +0 -0
  43. hikyuu/cpp/libhku_hdf5_hl_cpp.so +0 -0
  44. hikyuu/cpp/libhku_hdf5_hl_cpp.so.200 +0 -0
  45. hikyuu/cpp/libhku_hdf5_hl_cpp.so.200.1.0 +0 -0
  46. hikyuu/cpp/libhku_hdf5_tools.so +0 -0
  47. hikyuu/cpp/libhku_hdf5_tools.so.200 +0 -0
  48. hikyuu/cpp/libhku_hdf5_tools.so.200.1.1 +0 -0
  49. hikyuu/cpp/libmysqlclient.so +0 -0
  50. hikyuu/cpp/libmysqlclient.so.21 +0 -0
  51. hikyuu/cpp/libmysqlclient.so.21.2.32 +0 -0
  52. hikyuu/cpp/libresolv.so.2 +0 -0
  53. hikyuu/cpp/libsqlite3.so +0 -0
  54. hikyuu/cpp/libssl.so.3 +0 -0
  55. hikyuu/cpp/libzstd.so.1 +0 -0
  56. hikyuu/data/__init__.py +1 -0
  57. hikyuu/data/clickhouse_upgrade/__init__.py +1 -0
  58. hikyuu/data/clickhouse_upgrade/createdb.sql +1085 -0
  59. hikyuu/data/common.py +248 -0
  60. hikyuu/data/common_clickhouse.py +465 -0
  61. hikyuu/data/common_h5.py +398 -0
  62. hikyuu/data/common_mysql.py +521 -0
  63. hikyuu/data/common_pytdx.py +126 -0
  64. hikyuu/data/common_sqlite3.py +141 -0
  65. hikyuu/data/em_block_to_clickhouse.py +120 -0
  66. hikyuu/data/em_block_to_mysql.py +121 -0
  67. hikyuu/data/em_block_to_sqlite.py +122 -0
  68. hikyuu/data/hku_config_template.py +335 -0
  69. hikyuu/data/mysql_upgrade/0001.sql +5 -0
  70. hikyuu/data/mysql_upgrade/0002.sql +3 -0
  71. hikyuu/data/mysql_upgrade/0003.sql +9 -0
  72. hikyuu/data/mysql_upgrade/0004.sql +26 -0
  73. hikyuu/data/mysql_upgrade/0005.sql +3 -0
  74. hikyuu/data/mysql_upgrade/0006.sql +2 -0
  75. hikyuu/data/mysql_upgrade/0007.sql +20 -0
  76. hikyuu/data/mysql_upgrade/0008.sql +6 -0
  77. hikyuu/data/mysql_upgrade/0009.sql +36 -0
  78. hikyuu/data/mysql_upgrade/0010.sql +5 -0
  79. hikyuu/data/mysql_upgrade/0011.sql +5 -0
  80. hikyuu/data/mysql_upgrade/0012.sql +5 -0
  81. hikyuu/data/mysql_upgrade/0013.sql +2389 -0
  82. hikyuu/data/mysql_upgrade/0014.sql +3 -0
  83. hikyuu/data/mysql_upgrade/0015.sql +4 -0
  84. hikyuu/data/mysql_upgrade/0016.sql +4 -0
  85. hikyuu/data/mysql_upgrade/0017.sql +5 -0
  86. hikyuu/data/mysql_upgrade/0018.sql +2 -0
  87. hikyuu/data/mysql_upgrade/0019.sql +6 -0
  88. hikyuu/data/mysql_upgrade/0020.sql +4 -0
  89. hikyuu/data/mysql_upgrade/0021.sql +4 -0
  90. hikyuu/data/mysql_upgrade/0022.sql +5 -0
  91. hikyuu/data/mysql_upgrade/0023.sql +4 -0
  92. hikyuu/data/mysql_upgrade/0024.sql +2 -0
  93. hikyuu/data/mysql_upgrade/0025.sql +61 -0
  94. hikyuu/data/mysql_upgrade/0026.sql +9 -0
  95. hikyuu/data/mysql_upgrade/0027.sql +6 -0
  96. hikyuu/data/mysql_upgrade/0028.sql +95 -0
  97. hikyuu/data/mysql_upgrade/__init__.py +1 -0
  98. hikyuu/data/mysql_upgrade/createdb.sql +265 -0
  99. hikyuu/data/pytdx_finance_to_clickhouse.py +107 -0
  100. hikyuu/data/pytdx_finance_to_mysql.py +129 -0
  101. hikyuu/data/pytdx_finance_to_sqlite.py +162 -0
  102. hikyuu/data/pytdx_to_clickhouse.py +841 -0
  103. hikyuu/data/pytdx_to_h5.py +705 -0
  104. hikyuu/data/pytdx_to_mysql.py +839 -0
  105. hikyuu/data/pytdx_to_taos.py +736 -0
  106. hikyuu/data/pytdx_weight_to_clickhouse.py +191 -0
  107. hikyuu/data/pytdx_weight_to_mysql.py +196 -0
  108. hikyuu/data/pytdx_weight_to_sqlite.py +192 -0
  109. hikyuu/data/sqlite_mem.py +84 -0
  110. hikyuu/data/sqlite_mem_sql/__init__.py +1 -0
  111. hikyuu/data/sqlite_mem_sql/createdb.sql +126 -0
  112. hikyuu/data/sqlite_upgrade/0001.sql +4 -0
  113. hikyuu/data/sqlite_upgrade/0002.sql +48 -0
  114. hikyuu/data/sqlite_upgrade/0003.sql +18 -0
  115. hikyuu/data/sqlite_upgrade/0004.sql +11 -0
  116. hikyuu/data/sqlite_upgrade/0005.sql +28 -0
  117. hikyuu/data/sqlite_upgrade/0006.sql +5 -0
  118. hikyuu/data/sqlite_upgrade/0007.sql +4 -0
  119. hikyuu/data/sqlite_upgrade/0008.sql +22 -0
  120. hikyuu/data/sqlite_upgrade/0009.sql +8 -0
  121. hikyuu/data/sqlite_upgrade/0010.sql +5 -0
  122. hikyuu/data/sqlite_upgrade/0011.sql +16 -0
  123. hikyuu/data/sqlite_upgrade/0012.sql +15 -0
  124. hikyuu/data/sqlite_upgrade/0013.sql +9 -0
  125. hikyuu/data/sqlite_upgrade/0014.sql +607 -0
  126. hikyuu/data/sqlite_upgrade/0015.sql +7 -0
  127. hikyuu/data/sqlite_upgrade/0016.sql +8 -0
  128. hikyuu/data/sqlite_upgrade/0017.sql +16 -0
  129. hikyuu/data/sqlite_upgrade/0018.sql +5 -0
  130. hikyuu/data/sqlite_upgrade/0019.sql +4 -0
  131. hikyuu/data/sqlite_upgrade/0020.sql +4 -0
  132. hikyuu/data/sqlite_upgrade/0021.sql +6 -0
  133. hikyuu/data/sqlite_upgrade/0022.sql +6 -0
  134. hikyuu/data/sqlite_upgrade/0023.sql +7 -0
  135. hikyuu/data/sqlite_upgrade/0024.sql +22 -0
  136. hikyuu/data/sqlite_upgrade/0025.sql +63 -0
  137. hikyuu/data/sqlite_upgrade/0026.sql +10 -0
  138. hikyuu/data/sqlite_upgrade/0027.sql +8 -0
  139. hikyuu/data/sqlite_upgrade/0028.sql +97 -0
  140. hikyuu/data/sqlite_upgrade/__init__.py +1 -0
  141. hikyuu/data/sqlite_upgrade/createdb.sql +61 -0
  142. hikyuu/data/tdx_to_clickhouse.py +448 -0
  143. hikyuu/data/tdx_to_h5.py +464 -0
  144. hikyuu/data/tdx_to_mysql.py +464 -0
  145. hikyuu/data/weight_to_mysql.py +72 -0
  146. hikyuu/data/weight_to_sqlite.py +70 -0
  147. hikyuu/data/zh_bond10_to_clickhouse.py +49 -0
  148. hikyuu/data/zh_bond10_to_mysql.py +30 -0
  149. hikyuu/data/zh_bond10_to_sqlite.py +42 -0
  150. hikyuu/data_driver/__init__.py +49 -0
  151. hikyuu/data_driver/jqdata_data_driver.py +277 -0
  152. hikyuu/data_driver/pytdx_data_driver.py +292 -0
  153. hikyuu/draw/__init__.py +65 -0
  154. hikyuu/draw/__init__.pyi +35 -0
  155. hikyuu/draw/drawplot/__init__.py +309 -0
  156. hikyuu/draw/drawplot/__init__.pyi +139 -0
  157. hikyuu/draw/drawplot/bokeh_draw.py +583 -0
  158. hikyuu/draw/drawplot/bokeh_draw.pyi +872 -0
  159. hikyuu/draw/drawplot/common.py +89 -0
  160. hikyuu/draw/drawplot/common.pyi +10 -0
  161. hikyuu/draw/drawplot/echarts_draw.py +598 -0
  162. hikyuu/draw/drawplot/echarts_draw.pyi +758 -0
  163. hikyuu/draw/drawplot/icon/1.png +0 -0
  164. hikyuu/draw/drawplot/icon/10.png +0 -0
  165. hikyuu/draw/drawplot/icon/11.png +0 -0
  166. hikyuu/draw/drawplot/icon/12.png +0 -0
  167. hikyuu/draw/drawplot/icon/13.png +0 -0
  168. hikyuu/draw/drawplot/icon/14.png +0 -0
  169. hikyuu/draw/drawplot/icon/15.png +0 -0
  170. hikyuu/draw/drawplot/icon/16.png +0 -0
  171. hikyuu/draw/drawplot/icon/17.png +0 -0
  172. hikyuu/draw/drawplot/icon/18.png +0 -0
  173. hikyuu/draw/drawplot/icon/19.png +0 -0
  174. hikyuu/draw/drawplot/icon/2.png +0 -0
  175. hikyuu/draw/drawplot/icon/20.png +0 -0
  176. hikyuu/draw/drawplot/icon/21.png +0 -0
  177. hikyuu/draw/drawplot/icon/22.png +0 -0
  178. hikyuu/draw/drawplot/icon/23.png +0 -0
  179. hikyuu/draw/drawplot/icon/24.png +0 -0
  180. hikyuu/draw/drawplot/icon/25.png +0 -0
  181. hikyuu/draw/drawplot/icon/26.png +0 -0
  182. hikyuu/draw/drawplot/icon/27.png +0 -0
  183. hikyuu/draw/drawplot/icon/28.png +0 -0
  184. hikyuu/draw/drawplot/icon/29.png +0 -0
  185. hikyuu/draw/drawplot/icon/3.png +0 -0
  186. hikyuu/draw/drawplot/icon/30.png +0 -0
  187. hikyuu/draw/drawplot/icon/31.png +0 -0
  188. hikyuu/draw/drawplot/icon/32.png +0 -0
  189. hikyuu/draw/drawplot/icon/33.png +0 -0
  190. hikyuu/draw/drawplot/icon/34.png +0 -0
  191. hikyuu/draw/drawplot/icon/35.png +0 -0
  192. hikyuu/draw/drawplot/icon/36.png +0 -0
  193. hikyuu/draw/drawplot/icon/37.png +0 -0
  194. hikyuu/draw/drawplot/icon/38.png +0 -0
  195. hikyuu/draw/drawplot/icon/39.png +0 -0
  196. hikyuu/draw/drawplot/icon/4.png +0 -0
  197. hikyuu/draw/drawplot/icon/40.png +0 -0
  198. hikyuu/draw/drawplot/icon/41.png +0 -0
  199. hikyuu/draw/drawplot/icon/42.png +0 -0
  200. hikyuu/draw/drawplot/icon/43.png +0 -0
  201. hikyuu/draw/drawplot/icon/44.png +0 -0
  202. hikyuu/draw/drawplot/icon/45.png +0 -0
  203. hikyuu/draw/drawplot/icon/46.png +0 -0
  204. hikyuu/draw/drawplot/icon/47.png +0 -0
  205. hikyuu/draw/drawplot/icon/48.png +0 -0
  206. hikyuu/draw/drawplot/icon/49.png +0 -0
  207. hikyuu/draw/drawplot/icon/5.png +0 -0
  208. hikyuu/draw/drawplot/icon/6.png +0 -0
  209. hikyuu/draw/drawplot/icon/7.png +0 -0
  210. hikyuu/draw/drawplot/icon/8.png +0 -0
  211. hikyuu/draw/drawplot/icon/9.png +0 -0
  212. hikyuu/draw/drawplot/icon/__init__.py +0 -0
  213. hikyuu/draw/drawplot/matplotlib_draw.py +1620 -0
  214. hikyuu/draw/drawplot/matplotlib_draw.pyi +1234 -0
  215. hikyuu/draw/elder.py +135 -0
  216. hikyuu/draw/elder.pyi +44 -0
  217. hikyuu/draw/kaufman.py +192 -0
  218. hikyuu/draw/kaufman.pyi +38 -0
  219. hikyuu/draw/volume.py +122 -0
  220. hikyuu/draw/volume.pyi +31 -0
  221. hikyuu/examples/Turtle_SG.py +47 -0
  222. hikyuu/examples/__init__.py +1 -0
  223. hikyuu/examples/examples_init.py +33 -0
  224. hikyuu/examples/notebook/000-Index.ipynb +76 -0
  225. hikyuu/examples/notebook/001-overview.ipynb +325 -0
  226. hikyuu/examples/notebook/002-HowToGetStock.ipynb +484 -0
  227. hikyuu/examples/notebook/003-HowToGetKDataAndDraw.ipynb +383 -0
  228. hikyuu/examples/notebook/004-IndicatorOverview.ipynb +568 -0
  229. hikyuu/examples/notebook/005-Drawplot.ipynb +350 -0
  230. hikyuu/examples/notebook/006-TradeManager.ipynb +1128 -0
  231. hikyuu/examples/notebook/007-SystemDetails.ipynb +394 -0
  232. hikyuu/examples/notebook/008-Pickle.ipynb +127 -0
  233. hikyuu/examples/notebook/009-RealData.ipynb +110 -0
  234. hikyuu/examples/notebook/010-Portfolio.ipynb +968 -0
  235. hikyuu/examples/notebook/Demo/Demo1.ipynb +623 -0
  236. hikyuu/examples/notebook/Demo/Demo2.ipynb +665 -0
  237. hikyuu/examples/notebook/Demo/__init__.py +1 -0
  238. hikyuu/examples/notebook/README.md +1 -0
  239. hikyuu/examples/notebook/__init__.py +1 -0
  240. hikyuu/examples/notebook/images/002_01_block_config.png +0 -0
  241. hikyuu/examples/notebook/images/008_01_tocsv.png +0 -0
  242. hikyuu/examples/notebook/images/008_02_tocsv_look.png +0 -0
  243. hikyuu/examples/notebook/images/008_03_pickle.png +0 -0
  244. hikyuu/examples/notebook/images/__init__.py +1 -0
  245. hikyuu/examples/quick_crtsg.py +40 -0
  246. hikyuu/extend.py +289 -0
  247. hikyuu/extend.pyi +658 -0
  248. hikyuu/fetcher/__init__.py +8 -0
  249. hikyuu/fetcher/proxy/__init__.py +12 -0
  250. hikyuu/fetcher/proxy/proxy.py +39 -0
  251. hikyuu/fetcher/proxy/zhima.py +63 -0
  252. hikyuu/fetcher/stock/__init__.py +8 -0
  253. hikyuu/fetcher/stock/zh_block_em.py +562 -0
  254. hikyuu/fetcher/stock/zh_stock_a_huatai.py +51 -0
  255. hikyuu/fetcher/stock/zh_stock_a_pytdx.py +129 -0
  256. hikyuu/fetcher/stock/zh_stock_a_qmt.py +57 -0
  257. hikyuu/fetcher/stock/zh_stock_a_sina_qq.py +185 -0
  258. hikyuu/flat/Spot.py +336 -0
  259. hikyuu/flat/SpotList.py +74 -0
  260. hikyuu/flat/__init__.py +4 -0
  261. hikyuu/gui/HikyuuTDX.py +1062 -0
  262. hikyuu/gui/__init__.py +1 -0
  263. hikyuu/gui/data/CollectSpotThread.py +43 -0
  264. hikyuu/gui/data/CollectToMemThread.py +123 -0
  265. hikyuu/gui/data/CollectToMySQLThread.py +178 -0
  266. hikyuu/gui/data/EscapetimeThread.py +32 -0
  267. hikyuu/gui/data/ImportBlockInfoTask.py +67 -0
  268. hikyuu/gui/data/ImportHistoryFinanceTask.py +161 -0
  269. hikyuu/gui/data/ImportPytdxTimeToH5Task.py +106 -0
  270. hikyuu/gui/data/ImportPytdxToH5Task.py +112 -0
  271. hikyuu/gui/data/ImportPytdxTransToH5Task.py +106 -0
  272. hikyuu/gui/data/ImportQmtToH5Task.py +209 -0
  273. hikyuu/gui/data/ImportTdxToH5Task.py +130 -0
  274. hikyuu/gui/data/ImportWeightToSqliteTask.py +128 -0
  275. hikyuu/gui/data/ImportZhBond10Task.py +59 -0
  276. hikyuu/gui/data/MainWindow.py +1003 -0
  277. hikyuu/gui/data/SchedImportThread.py +62 -0
  278. hikyuu/gui/data/UsePytdxImportToH5Thread.py +394 -0
  279. hikyuu/gui/data/UseQmtImportToH5Thread.py +317 -0
  280. hikyuu/gui/data/UseTdxImportToH5Thread.py +357 -0
  281. hikyuu/gui/data/__init__.py +1 -0
  282. hikyuu/gui/data/tool.py +43 -0
  283. hikyuu/gui/dataserver.py +33 -0
  284. hikyuu/gui/hikyuu.ico +0 -0
  285. hikyuu/gui/images/hikyuu_small.png +0 -0
  286. hikyuu/gui/images/star.png +0 -0
  287. hikyuu/gui/importdata.py +166 -0
  288. hikyuu/gui/spot_server.py +326 -0
  289. hikyuu/gui/start_huatai_insight.py +510 -0
  290. hikyuu/gui/start_qmt.py +139 -0
  291. hikyuu/hub.py +771 -0
  292. hikyuu/hub.pyi +295 -0
  293. hikyuu/include/__init__.py +1 -0
  294. hikyuu/include/hikyuu/Block.h +193 -0
  295. hikyuu/include/hikyuu/DataType.h +179 -0
  296. hikyuu/include/hikyuu/GlobalInitializer.h +46 -0
  297. hikyuu/include/hikyuu/HistoryFinanceInfo.h +35 -0
  298. hikyuu/include/hikyuu/KData.h +334 -0
  299. hikyuu/include/hikyuu/KDataImp.h +83 -0
  300. hikyuu/include/hikyuu/KDataPrivatedBufferImp.h +73 -0
  301. hikyuu/include/hikyuu/KDataSharedBufferImp.h +69 -0
  302. hikyuu/include/hikyuu/KQuery.h +289 -0
  303. hikyuu/include/hikyuu/KRecord.h +97 -0
  304. hikyuu/include/hikyuu/MarketInfo.h +138 -0
  305. hikyuu/include/hikyuu/Stock.h +376 -0
  306. hikyuu/include/hikyuu/StockManager.h +418 -0
  307. hikyuu/include/hikyuu/StockMapIterator.h +72 -0
  308. hikyuu/include/hikyuu/StockTypeInfo.h +133 -0
  309. hikyuu/include/hikyuu/StockWeight.h +148 -0
  310. hikyuu/include/hikyuu/StrategyContext.h +116 -0
  311. hikyuu/include/hikyuu/TimeLineRecord.h +71 -0
  312. hikyuu/include/hikyuu/TransRecord.h +73 -0
  313. hikyuu/include/hikyuu/ZhBond10.h +36 -0
  314. hikyuu/include/hikyuu/__init__.py +1 -0
  315. hikyuu/include/hikyuu/analysis/__init__.py +1 -0
  316. hikyuu/include/hikyuu/analysis/analysis_sys.h +76 -0
  317. hikyuu/include/hikyuu/analysis/combinate.h +115 -0
  318. hikyuu/include/hikyuu/config.h +51 -0
  319. hikyuu/include/hikyuu/data_driver/BaseInfoDriver.h +236 -0
  320. hikyuu/include/hikyuu/data_driver/BlockInfoDriver.h +108 -0
  321. hikyuu/include/hikyuu/data_driver/DataDriverFactory.h +58 -0
  322. hikyuu/include/hikyuu/data_driver/DriverConnectPool.h +146 -0
  323. hikyuu/include/hikyuu/data_driver/HistoryFinanceReader.h +36 -0
  324. hikyuu/include/hikyuu/data_driver/KDataDriver.h +199 -0
  325. hikyuu/include/hikyuu/data_driver/__init__.py +1 -0
  326. hikyuu/include/hikyuu/data_driver/base_info/__init__.py +1 -0
  327. hikyuu/include/hikyuu/data_driver/base_info/mysql/MySQLBaseInfoDriver.h +54 -0
  328. hikyuu/include/hikyuu/data_driver/base_info/mysql/__init__.py +1 -0
  329. hikyuu/include/hikyuu/data_driver/base_info/sqlite/SQLiteBaseInfoDriver.h +50 -0
  330. hikyuu/include/hikyuu/data_driver/base_info/sqlite/__init__.py +1 -0
  331. hikyuu/include/hikyuu/data_driver/base_info/table/HistoryFinanceFieldTable.h +19 -0
  332. hikyuu/include/hikyuu/data_driver/base_info/table/HistoryFinanceTable.h +23 -0
  333. hikyuu/include/hikyuu/data_driver/base_info/table/HolidayTable.h +29 -0
  334. hikyuu/include/hikyuu/data_driver/base_info/table/MarketInfoTable.h +127 -0
  335. hikyuu/include/hikyuu/data_driver/base_info/table/StockTable.h +64 -0
  336. hikyuu/include/hikyuu/data_driver/base_info/table/StockTypeInfoTable.h +108 -0
  337. hikyuu/include/hikyuu/data_driver/base_info/table/StockWeightTable.h +52 -0
  338. hikyuu/include/hikyuu/data_driver/base_info/table/ZhBond10Table.h +20 -0
  339. hikyuu/include/hikyuu/data_driver/base_info/table/__init__.py +1 -0
  340. hikyuu/include/hikyuu/data_driver/block_info/__init__.py +1 -0
  341. hikyuu/include/hikyuu/data_driver/block_info/mysql/MySQLBlockInfoDriver.h +36 -0
  342. hikyuu/include/hikyuu/data_driver/block_info/mysql/__init__.py +1 -0
  343. hikyuu/include/hikyuu/data_driver/block_info/qianlong/QLBlockInfoDriver.h +31 -0
  344. hikyuu/include/hikyuu/data_driver/block_info/qianlong/__init__.py +1 -0
  345. hikyuu/include/hikyuu/data_driver/block_info/sqlite/SQLiteBlockInfoDriver.h +36 -0
  346. hikyuu/include/hikyuu/data_driver/block_info/sqlite/__init__.py +1 -0
  347. hikyuu/include/hikyuu/data_driver/kdata/DoNothingKDataDriver.h +33 -0
  348. hikyuu/include/hikyuu/data_driver/kdata/__init__.py +1 -0
  349. hikyuu/include/hikyuu/data_driver/kdata/cvs/KDataTempCsvDriver.h +106 -0
  350. hikyuu/include/hikyuu/data_driver/kdata/cvs/__init__.py +1 -0
  351. hikyuu/include/hikyuu/data_driver/kdata/hdf5/H5KDataDriver.h +89 -0
  352. hikyuu/include/hikyuu/data_driver/kdata/hdf5/H5Record.h +50 -0
  353. hikyuu/include/hikyuu/data_driver/kdata/hdf5/__init__.py +1 -0
  354. hikyuu/include/hikyuu/data_driver/kdata/mysql/KRecordTable.h +164 -0
  355. hikyuu/include/hikyuu/data_driver/kdata/mysql/MySQLKDataDriver.h +78 -0
  356. hikyuu/include/hikyuu/data_driver/kdata/mysql/__init__.py +1 -0
  357. hikyuu/include/hikyuu/data_driver/kdata/sqlite/SQLiteKDataDriver.h +62 -0
  358. hikyuu/include/hikyuu/data_driver/kdata/sqlite/__init__.py +1 -0
  359. hikyuu/include/hikyuu/data_driver/kdata/tdx/TdxKDataDriver.h +63 -0
  360. hikyuu/include/hikyuu/data_driver/kdata/tdx/__init__.py +1 -0
  361. hikyuu/include/hikyuu/debug.h +32 -0
  362. hikyuu/include/hikyuu/doc.h +170 -0
  363. hikyuu/include/hikyuu/global/GlobalSpotAgent.h +41 -0
  364. hikyuu/include/hikyuu/global/SpotRecord.h +36 -0
  365. hikyuu/include/hikyuu/global/__init__.py +1 -0
  366. hikyuu/include/hikyuu/global/agent/SpotAgent.h +148 -0
  367. hikyuu/include/hikyuu/global/agent/__init__.py +1 -0
  368. hikyuu/include/hikyuu/global/agent/spot_generated.h +343 -0
  369. hikyuu/include/hikyuu/global/schedule/__init__.py +1 -0
  370. hikyuu/include/hikyuu/global/schedule/inner_tasks.h +16 -0
  371. hikyuu/include/hikyuu/global/schedule/scheduler.h +24 -0
  372. hikyuu/include/hikyuu/global/sysinfo.h +67 -0
  373. hikyuu/include/hikyuu/hikyuu.h +55 -0
  374. hikyuu/include/hikyuu/indicator/IndParam.h +39 -0
  375. hikyuu/include/hikyuu/indicator/Indicator.h +487 -0
  376. hikyuu/include/hikyuu/indicator/Indicator2InImp.h +75 -0
  377. hikyuu/include/hikyuu/indicator/IndicatorImp.h +490 -0
  378. hikyuu/include/hikyuu/indicator/__init__.py +1 -0
  379. hikyuu/include/hikyuu/indicator/build_in.h +133 -0
  380. hikyuu/include/hikyuu/indicator/crt/ABS.h +34 -0
  381. hikyuu/include/hikyuu/indicator/crt/ACOS.h +36 -0
  382. hikyuu/include/hikyuu/indicator/crt/AD.h +28 -0
  383. hikyuu/include/hikyuu/indicator/crt/ADVANCE.h +34 -0
  384. hikyuu/include/hikyuu/indicator/crt/ALIGN.h +42 -0
  385. hikyuu/include/hikyuu/indicator/crt/AMA.h +114 -0
  386. hikyuu/include/hikyuu/indicator/crt/ASIN.h +36 -0
  387. hikyuu/include/hikyuu/indicator/crt/ATAN.h +36 -0
  388. hikyuu/include/hikyuu/indicator/crt/ATR.h +33 -0
  389. hikyuu/include/hikyuu/indicator/crt/AVEDEV.h +45 -0
  390. hikyuu/include/hikyuu/indicator/crt/BACKSET.h +44 -0
  391. hikyuu/include/hikyuu/indicator/crt/BARSCOUNT.h +37 -0
  392. hikyuu/include/hikyuu/indicator/crt/BARSLAST.h +41 -0
  393. hikyuu/include/hikyuu/indicator/crt/BARSLASTCOUNT.h +33 -0
  394. hikyuu/include/hikyuu/indicator/crt/BARSSINCE.h +53 -0
  395. hikyuu/include/hikyuu/indicator/crt/BETWEEN.h +85 -0
  396. hikyuu/include/hikyuu/indicator/crt/BLOCKSETNUM.h +23 -0
  397. hikyuu/include/hikyuu/indicator/crt/CEILING.h +38 -0
  398. hikyuu/include/hikyuu/indicator/crt/CONTEXT.h +36 -0
  399. hikyuu/include/hikyuu/indicator/crt/CORR.h +26 -0
  400. hikyuu/include/hikyuu/indicator/crt/COS.h +36 -0
  401. hikyuu/include/hikyuu/indicator/crt/COST.h +37 -0
  402. hikyuu/include/hikyuu/indicator/crt/COUNT.h +54 -0
  403. hikyuu/include/hikyuu/indicator/crt/CROSS.h +48 -0
  404. hikyuu/include/hikyuu/indicator/crt/CVAL.h +35 -0
  405. hikyuu/include/hikyuu/indicator/crt/CYCLE.h +27 -0
  406. hikyuu/include/hikyuu/indicator/crt/DECLINE.h +34 -0
  407. hikyuu/include/hikyuu/indicator/crt/DEVSQ.h +40 -0
  408. hikyuu/include/hikyuu/indicator/crt/DIFF.h +31 -0
  409. hikyuu/include/hikyuu/indicator/crt/DISCARD.h +27 -0
  410. hikyuu/include/hikyuu/indicator/crt/DMA.h +35 -0
  411. hikyuu/include/hikyuu/indicator/crt/DOWNNDAY.h +43 -0
  412. hikyuu/include/hikyuu/indicator/crt/DROPNA.h +31 -0
  413. hikyuu/include/hikyuu/indicator/crt/EMA.h +44 -0
  414. hikyuu/include/hikyuu/indicator/crt/EVERY.h +44 -0
  415. hikyuu/include/hikyuu/indicator/crt/EXIST.h +44 -0
  416. hikyuu/include/hikyuu/indicator/crt/EXP.h +34 -0
  417. hikyuu/include/hikyuu/indicator/crt/FILTER.h +44 -0
  418. hikyuu/include/hikyuu/indicator/crt/FINANCE.h +20 -0
  419. hikyuu/include/hikyuu/indicator/crt/FLOOR.h +38 -0
  420. hikyuu/include/hikyuu/indicator/crt/HHV.h +44 -0
  421. hikyuu/include/hikyuu/indicator/crt/HHVBARS.h +44 -0
  422. hikyuu/include/hikyuu/indicator/crt/HSL.h +27 -0
  423. hikyuu/include/hikyuu/indicator/crt/IC.h +49 -0
  424. hikyuu/include/hikyuu/indicator/crt/ICIR.h +55 -0
  425. hikyuu/include/hikyuu/indicator/crt/INBLOCK.h +31 -0
  426. hikyuu/include/hikyuu/indicator/crt/INDEX.h +60 -0
  427. hikyuu/include/hikyuu/indicator/crt/INSUM.h +33 -0
  428. hikyuu/include/hikyuu/indicator/crt/INTPART.h +38 -0
  429. hikyuu/include/hikyuu/indicator/crt/IR.h +44 -0
  430. hikyuu/include/hikyuu/indicator/crt/ISINF.h +28 -0
  431. hikyuu/include/hikyuu/indicator/crt/ISINFA.h +28 -0
  432. hikyuu/include/hikyuu/indicator/crt/ISLASTBAR.h +30 -0
  433. hikyuu/include/hikyuu/indicator/crt/ISNA.h +29 -0
  434. hikyuu/include/hikyuu/indicator/crt/JUMPDOWN.h +24 -0
  435. hikyuu/include/hikyuu/indicator/crt/JUMPUP.h +24 -0
  436. hikyuu/include/hikyuu/indicator/crt/KALMAN.h +30 -0
  437. hikyuu/include/hikyuu/indicator/crt/KDATA.h +72 -0
  438. hikyuu/include/hikyuu/indicator/crt/LAST.h +100 -0
  439. hikyuu/include/hikyuu/indicator/crt/LASTVALUE.h +29 -0
  440. hikyuu/include/hikyuu/indicator/crt/LIUTONGPAN.h +24 -0
  441. hikyuu/include/hikyuu/indicator/crt/LLV.h +46 -0
  442. hikyuu/include/hikyuu/indicator/crt/LLVBARS.h +44 -0
  443. hikyuu/include/hikyuu/indicator/crt/LN.h +36 -0
  444. hikyuu/include/hikyuu/indicator/crt/LOG.h +35 -0
  445. hikyuu/include/hikyuu/indicator/crt/LONGCROSS.h +68 -0
  446. hikyuu/include/hikyuu/indicator/crt/MA.h +44 -0
  447. hikyuu/include/hikyuu/indicator/crt/MACD.h +62 -0
  448. hikyuu/include/hikyuu/indicator/crt/MAX.h +45 -0
  449. hikyuu/include/hikyuu/indicator/crt/MDD.h +29 -0
  450. hikyuu/include/hikyuu/indicator/crt/MIN.h +45 -0
  451. hikyuu/include/hikyuu/indicator/crt/MOD.h +49 -0
  452. hikyuu/include/hikyuu/indicator/crt/MRR.h +29 -0
  453. hikyuu/include/hikyuu/indicator/crt/NDAY.h +43 -0
  454. hikyuu/include/hikyuu/indicator/crt/NOT.h +35 -0
  455. hikyuu/include/hikyuu/indicator/crt/POS.h +21 -0
  456. hikyuu/include/hikyuu/indicator/crt/POW.h +48 -0
  457. hikyuu/include/hikyuu/indicator/crt/PRICELIST.h +47 -0
  458. hikyuu/include/hikyuu/indicator/crt/RECOVER.h +45 -0
  459. hikyuu/include/hikyuu/indicator/crt/REF.h +48 -0
  460. hikyuu/include/hikyuu/indicator/crt/REFX.h +25 -0
  461. hikyuu/include/hikyuu/indicator/crt/REPLACE.h +29 -0
  462. hikyuu/include/hikyuu/indicator/crt/RESULT.h +20 -0
  463. hikyuu/include/hikyuu/indicator/crt/REVERSE.h +36 -0
  464. hikyuu/include/hikyuu/indicator/crt/ROC.h +39 -0
  465. hikyuu/include/hikyuu/indicator/crt/ROCP.h +39 -0
  466. hikyuu/include/hikyuu/indicator/crt/ROCR.h +39 -0
  467. hikyuu/include/hikyuu/indicator/crt/ROCR100.h +39 -0
  468. hikyuu/include/hikyuu/indicator/crt/ROUND.h +36 -0
  469. hikyuu/include/hikyuu/indicator/crt/ROUNDDOWN.h +36 -0
  470. hikyuu/include/hikyuu/indicator/crt/ROUNDUP.h +36 -0
  471. hikyuu/include/hikyuu/indicator/crt/RSI.h +27 -0
  472. hikyuu/include/hikyuu/indicator/crt/SAFTYLOSS.h +79 -0
  473. hikyuu/include/hikyuu/indicator/crt/SGN.h +34 -0
  474. hikyuu/include/hikyuu/indicator/crt/SIN.h +36 -0
  475. hikyuu/include/hikyuu/indicator/crt/SLICE.h +44 -0
  476. hikyuu/include/hikyuu/indicator/crt/SLOPE.h +44 -0
  477. hikyuu/include/hikyuu/indicator/crt/SMA.h +72 -0
  478. hikyuu/include/hikyuu/indicator/crt/SPEARMAN.h +25 -0
  479. hikyuu/include/hikyuu/indicator/crt/SQRT.h +41 -0
  480. hikyuu/include/hikyuu/indicator/crt/STDEV.h +44 -0
  481. hikyuu/include/hikyuu/indicator/crt/STDP.h +38 -0
  482. hikyuu/include/hikyuu/indicator/crt/SUM.h +44 -0
  483. hikyuu/include/hikyuu/indicator/crt/SUMBARS.h +44 -0
  484. hikyuu/include/hikyuu/indicator/crt/TAN.h +36 -0
  485. hikyuu/include/hikyuu/indicator/crt/TIME.h +69 -0
  486. hikyuu/include/hikyuu/indicator/crt/TIMELINE.h +23 -0
  487. hikyuu/include/hikyuu/indicator/crt/TIMELINEVOL.h +21 -0
  488. hikyuu/include/hikyuu/indicator/crt/TR.h +32 -0
  489. hikyuu/include/hikyuu/indicator/crt/TURNOVER.h +21 -0
  490. hikyuu/include/hikyuu/indicator/crt/UPNDAY.h +43 -0
  491. hikyuu/include/hikyuu/indicator/crt/VAR.h +40 -0
  492. hikyuu/include/hikyuu/indicator/crt/VARP.h +40 -0
  493. hikyuu/include/hikyuu/indicator/crt/VIGOR.h +34 -0
  494. hikyuu/include/hikyuu/indicator/crt/WINNER.h +38 -0
  495. hikyuu/include/hikyuu/indicator/crt/WMA.h +46 -0
  496. hikyuu/include/hikyuu/indicator/crt/ZHBOND10.h +27 -0
  497. hikyuu/include/hikyuu/indicator/crt/ZONGGUBEN.h +17 -0
  498. hikyuu/include/hikyuu/indicator/crt/ZSCORE.h +30 -0
  499. hikyuu/include/hikyuu/indicator/crt/__init__.py +1 -0
  500. hikyuu/include/hikyuu/indicator/imp/IAbs.h +26 -0
  501. hikyuu/include/hikyuu/indicator/imp/IAcos.h +28 -0
  502. hikyuu/include/hikyuu/indicator/imp/IAd.h +30 -0
  503. hikyuu/include/hikyuu/indicator/imp/IAdvance.h +29 -0
  504. hikyuu/include/hikyuu/indicator/imp/IAlign.h +28 -0
  505. hikyuu/include/hikyuu/indicator/imp/IAma.h +38 -0
  506. hikyuu/include/hikyuu/indicator/imp/IAsin.h +28 -0
  507. hikyuu/include/hikyuu/indicator/imp/IAtan.h +28 -0
  508. hikyuu/include/hikyuu/indicator/imp/IAtr.h +30 -0
  509. hikyuu/include/hikyuu/indicator/imp/IBackset.h +33 -0
  510. hikyuu/include/hikyuu/indicator/imp/IBarsCount.h +28 -0
  511. hikyuu/include/hikyuu/indicator/imp/IBarsLast.h +28 -0
  512. hikyuu/include/hikyuu/indicator/imp/IBarsLastCount.h +27 -0
  513. hikyuu/include/hikyuu/indicator/imp/IBarsSince.h +34 -0
  514. hikyuu/include/hikyuu/indicator/imp/IBlockSetNum.h +28 -0
  515. hikyuu/include/hikyuu/indicator/imp/ICeil.h +31 -0
  516. hikyuu/include/hikyuu/indicator/imp/IContext.h +49 -0
  517. hikyuu/include/hikyuu/indicator/imp/ICorr.h +26 -0
  518. hikyuu/include/hikyuu/indicator/imp/ICos.h +28 -0
  519. hikyuu/include/hikyuu/indicator/imp/ICost.h +31 -0
  520. hikyuu/include/hikyuu/indicator/imp/ICount.h +32 -0
  521. hikyuu/include/hikyuu/indicator/imp/ICval.h +35 -0
  522. hikyuu/include/hikyuu/indicator/imp/ICycle.h +30 -0
  523. hikyuu/include/hikyuu/indicator/imp/IDecline.h +29 -0
  524. hikyuu/include/hikyuu/indicator/imp/IDevsq.h +29 -0
  525. hikyuu/include/hikyuu/indicator/imp/IDiff.h +29 -0
  526. hikyuu/include/hikyuu/indicator/imp/IDiscard.h +28 -0
  527. hikyuu/include/hikyuu/indicator/imp/IDma.h +30 -0
  528. hikyuu/include/hikyuu/indicator/imp/IDropna.h +37 -0
  529. hikyuu/include/hikyuu/indicator/imp/IEma.h +29 -0
  530. hikyuu/include/hikyuu/indicator/imp/IEvery.h +32 -0
  531. hikyuu/include/hikyuu/indicator/imp/IExist.h +32 -0
  532. hikyuu/include/hikyuu/indicator/imp/IExp.h +28 -0
  533. hikyuu/include/hikyuu/indicator/imp/IFilter.h +34 -0
  534. hikyuu/include/hikyuu/indicator/imp/IFinance.h +25 -0
  535. hikyuu/include/hikyuu/indicator/imp/IFloor.h +31 -0
  536. hikyuu/include/hikyuu/indicator/imp/IHhvbars.h +29 -0
  537. hikyuu/include/hikyuu/indicator/imp/IHighLine.h +34 -0
  538. hikyuu/include/hikyuu/indicator/imp/IHsl.h +30 -0
  539. hikyuu/include/hikyuu/indicator/imp/IIc.h +46 -0
  540. hikyuu/include/hikyuu/indicator/imp/IInBlock.h +30 -0
  541. hikyuu/include/hikyuu/indicator/imp/IInSum.h +28 -0
  542. hikyuu/include/hikyuu/indicator/imp/IIndex.h +26 -0
  543. hikyuu/include/hikyuu/indicator/imp/IIntpart.h +31 -0
  544. hikyuu/include/hikyuu/indicator/imp/IIsInf.h +26 -0
  545. hikyuu/include/hikyuu/indicator/imp/IIsInfa.h +26 -0
  546. hikyuu/include/hikyuu/indicator/imp/IIsLastBar.h +27 -0
  547. hikyuu/include/hikyuu/indicator/imp/IIsNa.h +26 -0
  548. hikyuu/include/hikyuu/indicator/imp/IJumpDown.h +24 -0
  549. hikyuu/include/hikyuu/indicator/imp/IJumpUp.h +24 -0
  550. hikyuu/include/hikyuu/indicator/imp/IKData.h +29 -0
  551. hikyuu/include/hikyuu/indicator/imp/IKalman.h +27 -0
  552. hikyuu/include/hikyuu/indicator/imp/ILastValue.h +26 -0
  553. hikyuu/include/hikyuu/indicator/imp/ILiuTongPan.h +29 -0
  554. hikyuu/include/hikyuu/indicator/imp/ILn.h +28 -0
  555. hikyuu/include/hikyuu/indicator/imp/ILog.h +28 -0
  556. hikyuu/include/hikyuu/indicator/imp/ILowLine.h +30 -0
  557. hikyuu/include/hikyuu/indicator/imp/ILowLineBars.h +29 -0
  558. hikyuu/include/hikyuu/indicator/imp/IMa.h +27 -0
  559. hikyuu/include/hikyuu/indicator/imp/IMacd.h +41 -0
  560. hikyuu/include/hikyuu/indicator/imp/IMdd.h +23 -0
  561. hikyuu/include/hikyuu/indicator/imp/IMrr.h +23 -0
  562. hikyuu/include/hikyuu/indicator/imp/INot.h +26 -0
  563. hikyuu/include/hikyuu/indicator/imp/IPow.h +32 -0
  564. hikyuu/include/hikyuu/indicator/imp/IPriceList.h +30 -0
  565. hikyuu/include/hikyuu/indicator/imp/IRecover.h +29 -0
  566. hikyuu/include/hikyuu/indicator/imp/IRef.h +34 -0
  567. hikyuu/include/hikyuu/indicator/imp/IRefX.h +23 -0
  568. hikyuu/include/hikyuu/indicator/imp/IReplace.h +26 -0
  569. hikyuu/include/hikyuu/indicator/imp/IResult.h +26 -0
  570. hikyuu/include/hikyuu/indicator/imp/IReverse.h +28 -0
  571. hikyuu/include/hikyuu/indicator/imp/IRoc.h +29 -0
  572. hikyuu/include/hikyuu/indicator/imp/IRocp.h +29 -0
  573. hikyuu/include/hikyuu/indicator/imp/IRocr.h +29 -0
  574. hikyuu/include/hikyuu/indicator/imp/IRocr100.h +29 -0
  575. hikyuu/include/hikyuu/indicator/imp/IRound.h +32 -0
  576. hikyuu/include/hikyuu/indicator/imp/IRoundDown.h +32 -0
  577. hikyuu/include/hikyuu/indicator/imp/IRoundUp.h +32 -0
  578. hikyuu/include/hikyuu/indicator/imp/ISaftyLoss.h +44 -0
  579. hikyuu/include/hikyuu/indicator/imp/ISign.h +28 -0
  580. hikyuu/include/hikyuu/indicator/imp/ISin.h +28 -0
  581. hikyuu/include/hikyuu/indicator/imp/ISlice.h +25 -0
  582. hikyuu/include/hikyuu/indicator/imp/ISlope.h +25 -0
  583. hikyuu/include/hikyuu/indicator/imp/ISma.h +34 -0
  584. hikyuu/include/hikyuu/indicator/imp/ISpearman.h +26 -0
  585. hikyuu/include/hikyuu/indicator/imp/ISqrt.h +31 -0
  586. hikyuu/include/hikyuu/indicator/imp/IStdev.h +31 -0
  587. hikyuu/include/hikyuu/indicator/imp/IStdp.h +33 -0
  588. hikyuu/include/hikyuu/indicator/imp/ISum.h +27 -0
  589. hikyuu/include/hikyuu/indicator/imp/ISumBars.h +30 -0
  590. hikyuu/include/hikyuu/indicator/imp/ITan.h +28 -0
  591. hikyuu/include/hikyuu/indicator/imp/ITime.h +33 -0
  592. hikyuu/include/hikyuu/indicator/imp/ITimeLine.h +32 -0
  593. hikyuu/include/hikyuu/indicator/imp/ITr.h +35 -0
  594. hikyuu/include/hikyuu/indicator/imp/IVar.h +32 -0
  595. hikyuu/include/hikyuu/indicator/imp/IVarp.h +32 -0
  596. hikyuu/include/hikyuu/indicator/imp/IVigor.h +35 -0
  597. hikyuu/include/hikyuu/indicator/imp/IWinner.h +26 -0
  598. hikyuu/include/hikyuu/indicator/imp/IWma.h +30 -0
  599. hikyuu/include/hikyuu/indicator/imp/IZScore.h +25 -0
  600. hikyuu/include/hikyuu/indicator/imp/IZhBond10.h +30 -0
  601. hikyuu/include/hikyuu/indicator/imp/IZongGuBen.h +25 -0
  602. hikyuu/include/hikyuu/indicator/imp/__init__.py +1 -0
  603. hikyuu/include/hikyuu/indicator_talib/__init__.py +1 -0
  604. hikyuu/include/hikyuu/indicator_talib/imp/TaAdosc.h +26 -0
  605. hikyuu/include/hikyuu/indicator_talib/imp/TaApo.h +24 -0
  606. hikyuu/include/hikyuu/indicator_talib/imp/TaBbands.h +24 -0
  607. hikyuu/include/hikyuu/indicator_talib/imp/TaMa.h +24 -0
  608. hikyuu/include/hikyuu/indicator_talib/imp/TaMacd.h +24 -0
  609. hikyuu/include/hikyuu/indicator_talib/imp/TaMacdext.h +24 -0
  610. hikyuu/include/hikyuu/indicator_talib/imp/TaMama.h +24 -0
  611. hikyuu/include/hikyuu/indicator_talib/imp/TaMavp.h +27 -0
  612. hikyuu/include/hikyuu/indicator_talib/imp/TaPpo.h +24 -0
  613. hikyuu/include/hikyuu/indicator_talib/imp/TaSar.h +26 -0
  614. hikyuu/include/hikyuu/indicator_talib/imp/TaSarext.h +31 -0
  615. hikyuu/include/hikyuu/indicator_talib/imp/TaStddev.h +24 -0
  616. hikyuu/include/hikyuu/indicator_talib/imp/TaStoch.h +27 -0
  617. hikyuu/include/hikyuu/indicator_talib/imp/TaStochf.h +26 -0
  618. hikyuu/include/hikyuu/indicator_talib/imp/TaStochrsi.h +24 -0
  619. hikyuu/include/hikyuu/indicator_talib/imp/TaT3.h +24 -0
  620. hikyuu/include/hikyuu/indicator_talib/imp/TaUltosc.h +26 -0
  621. hikyuu/include/hikyuu/indicator_talib/imp/TaVar.h +24 -0
  622. hikyuu/include/hikyuu/indicator_talib/imp/__init__.py +1 -0
  623. hikyuu/include/hikyuu/indicator_talib/imp/ta_defines.h +237 -0
  624. hikyuu/include/hikyuu/indicator_talib/imp/ta_imp.h +1328 -0
  625. hikyuu/include/hikyuu/indicator_talib/ta_crt.h +322 -0
  626. hikyuu/include/hikyuu/lang.h +27 -0
  627. hikyuu/include/hikyuu/plugin/KDataToHdf5Importer.h +41 -0
  628. hikyuu/include/hikyuu/plugin/__init__.py +1 -0
  629. hikyuu/include/hikyuu/plugin/backtest.h +40 -0
  630. hikyuu/include/hikyuu/plugin/dataserver.h +43 -0
  631. hikyuu/include/hikyuu/plugin/device.h +33 -0
  632. hikyuu/include/hikyuu/plugin/extind.h +195 -0
  633. hikyuu/include/hikyuu/plugin/hkuextra.h +77 -0
  634. hikyuu/include/hikyuu/plugin/interface/BackTestPluginInterface.h +27 -0
  635. hikyuu/include/hikyuu/plugin/interface/DataDriverPluginInterface.h +27 -0
  636. hikyuu/include/hikyuu/plugin/interface/DataServerPluginInterface.h +24 -0
  637. hikyuu/include/hikyuu/plugin/interface/DevicePluginInterface.h +26 -0
  638. hikyuu/include/hikyuu/plugin/interface/ExtendIndicatorsPluginInterface.h +26 -0
  639. hikyuu/include/hikyuu/plugin/interface/HkuExtraPluginInterface.h +54 -0
  640. hikyuu/include/hikyuu/plugin/interface/ImportKDataToHdf5PluginInterface.h +45 -0
  641. hikyuu/include/hikyuu/plugin/interface/TMReportPluginInterface.h +81 -0
  642. hikyuu/include/hikyuu/plugin/interface/__init__.py +1 -0
  643. hikyuu/include/hikyuu/plugin/interface/plugins.h +30 -0
  644. hikyuu/include/hikyuu/python/__init__.py +1 -0
  645. hikyuu/include/hikyuu/python/convert_any.h +299 -0
  646. hikyuu/include/hikyuu/python/pickle_support.h +90 -0
  647. hikyuu/include/hikyuu/python/pybind_utils.h +128 -0
  648. hikyuu/include/hikyuu/serialization/Block_serialization.h +55 -0
  649. hikyuu/include/hikyuu/serialization/Datetime_serialization.h +40 -0
  650. hikyuu/include/hikyuu/serialization/KData_serialization.h +45 -0
  651. hikyuu/include/hikyuu/serialization/KQuery_serialization.h +79 -0
  652. hikyuu/include/hikyuu/serialization/KRecord_serialization.h +50 -0
  653. hikyuu/include/hikyuu/serialization/MarketInfo_serialization.h +68 -0
  654. hikyuu/include/hikyuu/serialization/PriceList_serialization.h +66 -0
  655. hikyuu/include/hikyuu/serialization/StockTypeInfo_serialization.h +62 -0
  656. hikyuu/include/hikyuu/serialization/StockWeight_serialization.h +65 -0
  657. hikyuu/include/hikyuu/serialization/Stock_serialization.h +47 -0
  658. hikyuu/include/hikyuu/serialization/TimeDelta_serialization.h +44 -0
  659. hikyuu/include/hikyuu/serialization/TimeLineRecord_serialization.h +42 -0
  660. hikyuu/include/hikyuu/serialization/TransRecord_serialization.h +44 -0
  661. hikyuu/include/hikyuu/serialization/__init__.py +1 -0
  662. hikyuu/include/hikyuu/serialization/all.h +26 -0
  663. hikyuu/include/hikyuu/strategy/BrokerTradeManager.h +436 -0
  664. hikyuu/include/hikyuu/strategy/RunPortfolioInStrategy.h +37 -0
  665. hikyuu/include/hikyuu/strategy/RunSystemInStrategy.h +38 -0
  666. hikyuu/include/hikyuu/strategy/Strategy.h +271 -0
  667. hikyuu/include/hikyuu/strategy/__init__.py +1 -0
  668. hikyuu/include/hikyuu/trade_manage/BorrowRecord.h +91 -0
  669. hikyuu/include/hikyuu/trade_manage/CostRecord.h +67 -0
  670. hikyuu/include/hikyuu/trade_manage/FundsRecord.h +110 -0
  671. hikyuu/include/hikyuu/trade_manage/LoanRecord.h +64 -0
  672. hikyuu/include/hikyuu/trade_manage/OrderBrokerBase.h +214 -0
  673. hikyuu/include/hikyuu/trade_manage/Performance.h +87 -0
  674. hikyuu/include/hikyuu/trade_manage/PositionExtInfo.h +92 -0
  675. hikyuu/include/hikyuu/trade_manage/PositionRecord.h +120 -0
  676. hikyuu/include/hikyuu/trade_manage/TradeCostBase.h +179 -0
  677. hikyuu/include/hikyuu/trade_manage/TradeManager.h +494 -0
  678. hikyuu/include/hikyuu/trade_manage/TradeManagerBase.h +850 -0
  679. hikyuu/include/hikyuu/trade_manage/TradeRecord.h +163 -0
  680. hikyuu/include/hikyuu/trade_manage/__init__.py +1 -0
  681. hikyuu/include/hikyuu/trade_manage/build_in.h +19 -0
  682. hikyuu/include/hikyuu/trade_manage/crt/TC_FixedA.h +45 -0
  683. hikyuu/include/hikyuu/trade_manage/crt/TC_FixedA2015.h +43 -0
  684. hikyuu/include/hikyuu/trade_manage/crt/TC_FixedA2017.h +44 -0
  685. hikyuu/include/hikyuu/trade_manage/crt/TC_TestStub.h +21 -0
  686. hikyuu/include/hikyuu/trade_manage/crt/TC_Zero.h +25 -0
  687. hikyuu/include/hikyuu/trade_manage/crt/__init__.py +1 -0
  688. hikyuu/include/hikyuu/trade_manage/crt/crtTM.h +33 -0
  689. hikyuu/include/hikyuu/trade_manage/imp/FixedA2015TradeCost.h +53 -0
  690. hikyuu/include/hikyuu/trade_manage/imp/FixedA2017TradeCost.h +56 -0
  691. hikyuu/include/hikyuu/trade_manage/imp/FixedATradeCost.h +88 -0
  692. hikyuu/include/hikyuu/trade_manage/imp/TradeCostStub.h +48 -0
  693. hikyuu/include/hikyuu/trade_manage/imp/ZeroTradeCost.h +50 -0
  694. hikyuu/include/hikyuu/trade_manage/imp/__init__.py +1 -0
  695. hikyuu/include/hikyuu/trade_sys/__init__.py +1 -0
  696. hikyuu/include/hikyuu/trade_sys/all.h +24 -0
  697. hikyuu/include/hikyuu/trade_sys/allocatefunds/AllocateFundsBase.h +234 -0
  698. hikyuu/include/hikyuu/trade_sys/allocatefunds/__init__.py +1 -0
  699. hikyuu/include/hikyuu/trade_sys/allocatefunds/build_in.h +17 -0
  700. hikyuu/include/hikyuu/trade_sys/allocatefunds/crt/AF_EqualWeight.h +25 -0
  701. hikyuu/include/hikyuu/trade_sys/allocatefunds/crt/AF_FixedWeight.h +26 -0
  702. hikyuu/include/hikyuu/trade_sys/allocatefunds/crt/AF_FixedWeightList.h +22 -0
  703. hikyuu/include/hikyuu/trade_sys/allocatefunds/crt/AF_MultiFactor.h +21 -0
  704. hikyuu/include/hikyuu/trade_sys/allocatefunds/crt/__init__.py +1 -0
  705. hikyuu/include/hikyuu/trade_sys/allocatefunds/imp/EqualWeightAllocateFunds.h +27 -0
  706. hikyuu/include/hikyuu/trade_sys/allocatefunds/imp/FixedWeightAllocateFunds.h +28 -0
  707. hikyuu/include/hikyuu/trade_sys/allocatefunds/imp/FixedWeightListAllocateFunds.h +25 -0
  708. hikyuu/include/hikyuu/trade_sys/allocatefunds/imp/MultiFactorAllocaterFunds.h +26 -0
  709. hikyuu/include/hikyuu/trade_sys/allocatefunds/imp/__init__.py +1 -0
  710. hikyuu/include/hikyuu/trade_sys/condition/ConditionBase.h +249 -0
  711. hikyuu/include/hikyuu/trade_sys/condition/__init__.py +1 -0
  712. hikyuu/include/hikyuu/trade_sys/condition/build_in.h +17 -0
  713. hikyuu/include/hikyuu/trade_sys/condition/crt/CN_Bool.h +22 -0
  714. hikyuu/include/hikyuu/trade_sys/condition/crt/CN_Logic.h +35 -0
  715. hikyuu/include/hikyuu/trade_sys/condition/crt/CN_Manual.h +20 -0
  716. hikyuu/include/hikyuu/trade_sys/condition/crt/CN_OPLine.h +26 -0
  717. hikyuu/include/hikyuu/trade_sys/condition/crt/__init__.py +1 -0
  718. hikyuu/include/hikyuu/trade_sys/condition/imp/BoolCondition.h +40 -0
  719. hikyuu/include/hikyuu/trade_sys/condition/imp/ManualCondition.h +23 -0
  720. hikyuu/include/hikyuu/trade_sys/condition/imp/OPLineCondition.h +44 -0
  721. hikyuu/include/hikyuu/trade_sys/condition/imp/__init__.py +1 -0
  722. hikyuu/include/hikyuu/trade_sys/condition/imp/logic/AddCondition.h +42 -0
  723. hikyuu/include/hikyuu/trade_sys/condition/imp/logic/AndCondition.h +42 -0
  724. hikyuu/include/hikyuu/trade_sys/condition/imp/logic/DivCondition.h +42 -0
  725. hikyuu/include/hikyuu/trade_sys/condition/imp/logic/MultiCondition.h +42 -0
  726. hikyuu/include/hikyuu/trade_sys/condition/imp/logic/OrCondition.h +42 -0
  727. hikyuu/include/hikyuu/trade_sys/condition/imp/logic/SubCondition.h +42 -0
  728. hikyuu/include/hikyuu/trade_sys/condition/imp/logic/__init__.py +1 -0
  729. hikyuu/include/hikyuu/trade_sys/environment/EnvironmentBase.h +197 -0
  730. hikyuu/include/hikyuu/trade_sys/environment/__init__.py +1 -0
  731. hikyuu/include/hikyuu/trade_sys/environment/build_in.h +17 -0
  732. hikyuu/include/hikyuu/trade_sys/environment/crt/EV_Bool.h +23 -0
  733. hikyuu/include/hikyuu/trade_sys/environment/crt/EV_Logic.h +35 -0
  734. hikyuu/include/hikyuu/trade_sys/environment/crt/EV_Manual.h +20 -0
  735. hikyuu/include/hikyuu/trade_sys/environment/crt/EV_TwoLine.h +28 -0
  736. hikyuu/include/hikyuu/trade_sys/environment/crt/__init__.py +1 -0
  737. hikyuu/include/hikyuu/trade_sys/environment/imp/BoolEnvironment.h +41 -0
  738. hikyuu/include/hikyuu/trade_sys/environment/imp/ManualEnvironment.h +23 -0
  739. hikyuu/include/hikyuu/trade_sys/environment/imp/TwoLineEnvironment.h +47 -0
  740. hikyuu/include/hikyuu/trade_sys/environment/imp/__init__.py +1 -0
  741. hikyuu/include/hikyuu/trade_sys/environment/imp/logic/AddEnvironment.h +42 -0
  742. hikyuu/include/hikyuu/trade_sys/environment/imp/logic/AndEnvironment.h +42 -0
  743. hikyuu/include/hikyuu/trade_sys/environment/imp/logic/DivEnvironment.h +42 -0
  744. hikyuu/include/hikyuu/trade_sys/environment/imp/logic/MultiEnvironment.h +42 -0
  745. hikyuu/include/hikyuu/trade_sys/environment/imp/logic/OrEnvironment.h +42 -0
  746. hikyuu/include/hikyuu/trade_sys/environment/imp/logic/SubEnvironment.h +42 -0
  747. hikyuu/include/hikyuu/trade_sys/environment/imp/logic/__init__.py +1 -0
  748. hikyuu/include/hikyuu/trade_sys/moneymanager/MoneyManagerBase.h +248 -0
  749. hikyuu/include/hikyuu/trade_sys/moneymanager/__init__.py +1 -0
  750. hikyuu/include/hikyuu/trade_sys/moneymanager/build_in.h +22 -0
  751. hikyuu/include/hikyuu/trade_sys/moneymanager/crt/MM_FixedCapital.h +26 -0
  752. hikyuu/include/hikyuu/trade_sys/moneymanager/crt/MM_FixedCapitalFunds.h +26 -0
  753. hikyuu/include/hikyuu/trade_sys/moneymanager/crt/MM_FixedCount.h +28 -0
  754. hikyuu/include/hikyuu/trade_sys/moneymanager/crt/MM_FixedCountTps.h +27 -0
  755. hikyuu/include/hikyuu/trade_sys/moneymanager/crt/MM_FixedPercent.h +27 -0
  756. hikyuu/include/hikyuu/trade_sys/moneymanager/crt/MM_FixedRisk.h +26 -0
  757. hikyuu/include/hikyuu/trade_sys/moneymanager/crt/MM_FixedUnits.h +26 -0
  758. hikyuu/include/hikyuu/trade_sys/moneymanager/crt/MM_Nothing.h +24 -0
  759. hikyuu/include/hikyuu/trade_sys/moneymanager/crt/MM_WilliamsFixedRisk.h +27 -0
  760. hikyuu/include/hikyuu/trade_sys/moneymanager/crt/__init__.py +1 -0
  761. hikyuu/include/hikyuu/trade_sys/moneymanager/imp/FixedCapitalFundsMM.h +28 -0
  762. hikyuu/include/hikyuu/trade_sys/moneymanager/imp/FixedCapitalMoneyManager.h +28 -0
  763. hikyuu/include/hikyuu/trade_sys/moneymanager/imp/FixedCountMoneyManager.h +38 -0
  764. hikyuu/include/hikyuu/trade_sys/moneymanager/imp/FixedCountTpsMM.h +44 -0
  765. hikyuu/include/hikyuu/trade_sys/moneymanager/imp/FixedPercentMoneyManager.h +34 -0
  766. hikyuu/include/hikyuu/trade_sys/moneymanager/imp/FixedRiskMoneyManager.h +28 -0
  767. hikyuu/include/hikyuu/trade_sys/moneymanager/imp/FixedUnitsMoneyManager.h +28 -0
  768. hikyuu/include/hikyuu/trade_sys/moneymanager/imp/NotMoneyManager.h +30 -0
  769. hikyuu/include/hikyuu/trade_sys/moneymanager/imp/WilliamsFixedRiskMoneyManager.h +28 -0
  770. hikyuu/include/hikyuu/trade_sys/moneymanager/imp/__init__.py +1 -0
  771. hikyuu/include/hikyuu/trade_sys/multifactor/MultiFactorBase.h +281 -0
  772. hikyuu/include/hikyuu/trade_sys/multifactor/ScoreRecord.h +51 -0
  773. hikyuu/include/hikyuu/trade_sys/multifactor/__init__.py +1 -0
  774. hikyuu/include/hikyuu/trade_sys/multifactor/build_in.h +13 -0
  775. hikyuu/include/hikyuu/trade_sys/multifactor/crt/MF_EqualWeight.h +32 -0
  776. hikyuu/include/hikyuu/trade_sys/multifactor/crt/MF_ICIRWeight.h +33 -0
  777. hikyuu/include/hikyuu/trade_sys/multifactor/crt/MF_ICWeight.h +33 -0
  778. hikyuu/include/hikyuu/trade_sys/multifactor/crt/MF_Weight.h +33 -0
  779. hikyuu/include/hikyuu/trade_sys/multifactor/crt/__init__.py +1 -0
  780. hikyuu/include/hikyuu/trade_sys/multifactor/imp/EqualWeightMultiFactor.h +26 -0
  781. hikyuu/include/hikyuu/trade_sys/multifactor/imp/ICIRMultiFactor.h +28 -0
  782. hikyuu/include/hikyuu/trade_sys/multifactor/imp/ICMultiFactor.h +28 -0
  783. hikyuu/include/hikyuu/trade_sys/multifactor/imp/WeightMultiFactor.h +41 -0
  784. hikyuu/include/hikyuu/trade_sys/multifactor/imp/__init__.py +1 -0
  785. hikyuu/include/hikyuu/trade_sys/portfolio/Portfolio.h +258 -0
  786. hikyuu/include/hikyuu/trade_sys/portfolio/__init__.py +1 -0
  787. hikyuu/include/hikyuu/trade_sys/portfolio/build_in.h +15 -0
  788. hikyuu/include/hikyuu/trade_sys/portfolio/crt/PF_Simple.h +47 -0
  789. hikyuu/include/hikyuu/trade_sys/portfolio/crt/PF_WithoutAF.h +50 -0
  790. hikyuu/include/hikyuu/trade_sys/portfolio/crt/__init__.py +1 -0
  791. hikyuu/include/hikyuu/trade_sys/portfolio/imp/SimplePortfolio.h +53 -0
  792. hikyuu/include/hikyuu/trade_sys/portfolio/imp/WithoutAFPortfolio.h +57 -0
  793. hikyuu/include/hikyuu/trade_sys/portfolio/imp/__init__.py +1 -0
  794. hikyuu/include/hikyuu/trade_sys/profitgoal/ProfitGoalBase.h +194 -0
  795. hikyuu/include/hikyuu/trade_sys/profitgoal/__init__.py +1 -0
  796. hikyuu/include/hikyuu/trade_sys/profitgoal/build_in.h +16 -0
  797. hikyuu/include/hikyuu/trade_sys/profitgoal/crt/PG_FixedHoldDays.h +26 -0
  798. hikyuu/include/hikyuu/trade_sys/profitgoal/crt/PG_FixedPercent.h +25 -0
  799. hikyuu/include/hikyuu/trade_sys/profitgoal/crt/PG_NoGoal.h +24 -0
  800. hikyuu/include/hikyuu/trade_sys/profitgoal/crt/__init__.py +1 -0
  801. hikyuu/include/hikyuu/trade_sys/profitgoal/imp/FixedHoldDays.h +29 -0
  802. hikyuu/include/hikyuu/trade_sys/profitgoal/imp/FixedPercentProfitGoal.h +28 -0
  803. hikyuu/include/hikyuu/trade_sys/profitgoal/imp/NoGoalProfitGoal.h +27 -0
  804. hikyuu/include/hikyuu/trade_sys/profitgoal/imp/__init__.py +1 -0
  805. hikyuu/include/hikyuu/trade_sys/selector/SelectorBase.h +251 -0
  806. hikyuu/include/hikyuu/trade_sys/selector/SystemWeight.h +70 -0
  807. hikyuu/include/hikyuu/trade_sys/selector/__init__.py +1 -0
  808. hikyuu/include/hikyuu/trade_sys/selector/build_in.h +18 -0
  809. hikyuu/include/hikyuu/trade_sys/selector/crt/SE_Fixed.h +38 -0
  810. hikyuu/include/hikyuu/trade_sys/selector/crt/SE_Logic.h +43 -0
  811. hikyuu/include/hikyuu/trade_sys/selector/crt/SE_MultiFactor.h +40 -0
  812. hikyuu/include/hikyuu/trade_sys/selector/crt/SE_Optimal.h +34 -0
  813. hikyuu/include/hikyuu/trade_sys/selector/crt/SE_Signal.h +30 -0
  814. hikyuu/include/hikyuu/trade_sys/selector/crt/__init__.py +1 -0
  815. hikyuu/include/hikyuu/trade_sys/selector/imp/FixedSelector.h +28 -0
  816. hikyuu/include/hikyuu/trade_sys/selector/imp/MultiFactorSelector.h +59 -0
  817. hikyuu/include/hikyuu/trade_sys/selector/imp/SignalSelector.h +30 -0
  818. hikyuu/include/hikyuu/trade_sys/selector/imp/__init__.py +1 -0
  819. hikyuu/include/hikyuu/trade_sys/selector/imp/logic/OperatorAddSelector.h +19 -0
  820. hikyuu/include/hikyuu/trade_sys/selector/imp/logic/OperatorAddValueSelector.h +19 -0
  821. hikyuu/include/hikyuu/trade_sys/selector/imp/logic/OperatorDivSelector.h +19 -0
  822. hikyuu/include/hikyuu/trade_sys/selector/imp/logic/OperatorDivValueSelector.h +19 -0
  823. hikyuu/include/hikyuu/trade_sys/selector/imp/logic/OperatorInvertDivValueSelector.h +19 -0
  824. hikyuu/include/hikyuu/trade_sys/selector/imp/logic/OperatorInvertSubValueSelector.h +19 -0
  825. hikyuu/include/hikyuu/trade_sys/selector/imp/logic/OperatorMulSelector.h +19 -0
  826. hikyuu/include/hikyuu/trade_sys/selector/imp/logic/OperatorMulValueSelector.h +19 -0
  827. hikyuu/include/hikyuu/trade_sys/selector/imp/logic/OperatorSelector.h +108 -0
  828. hikyuu/include/hikyuu/trade_sys/selector/imp/logic/OperatorSubSelector.h +19 -0
  829. hikyuu/include/hikyuu/trade_sys/selector/imp/logic/OperatorSubValueSelector.h +19 -0
  830. hikyuu/include/hikyuu/trade_sys/selector/imp/logic/OperatorValueSelector.h +94 -0
  831. hikyuu/include/hikyuu/trade_sys/selector/imp/logic/__init__.py +1 -0
  832. hikyuu/include/hikyuu/trade_sys/selector/imp/optimal/MaxFundsOptimalSelector.h +27 -0
  833. hikyuu/include/hikyuu/trade_sys/selector/imp/optimal/OptimalEvaluateSelector.h +28 -0
  834. hikyuu/include/hikyuu/trade_sys/selector/imp/optimal/OptimalSelectorBase.h +87 -0
  835. hikyuu/include/hikyuu/trade_sys/selector/imp/optimal/PerformanceOptimalSelector.h +42 -0
  836. hikyuu/include/hikyuu/trade_sys/selector/imp/optimal/__init__.py +1 -0
  837. hikyuu/include/hikyuu/trade_sys/signal/SignalBase.h +294 -0
  838. hikyuu/include/hikyuu/trade_sys/signal/__init__.py +1 -0
  839. hikyuu/include/hikyuu/trade_sys/signal/build_in.h +24 -0
  840. hikyuu/include/hikyuu/trade_sys/signal/crt/SG_AllwaysBuy.h +20 -0
  841. hikyuu/include/hikyuu/trade_sys/signal/crt/SG_Band.h +37 -0
  842. hikyuu/include/hikyuu/trade_sys/signal/crt/SG_Bool.h +29 -0
  843. hikyuu/include/hikyuu/trade_sys/signal/crt/SG_Cross.h +28 -0
  844. hikyuu/include/hikyuu/trade_sys/signal/crt/SG_CrossGold.h +29 -0
  845. hikyuu/include/hikyuu/trade_sys/signal/crt/SG_Cycle.h +20 -0
  846. hikyuu/include/hikyuu/trade_sys/signal/crt/SG_Flex.h +29 -0
  847. hikyuu/include/hikyuu/trade_sys/signal/crt/SG_Logic.h +127 -0
  848. hikyuu/include/hikyuu/trade_sys/signal/crt/SG_Manual.h +20 -0
  849. hikyuu/include/hikyuu/trade_sys/signal/crt/SG_OneSide.h +38 -0
  850. hikyuu/include/hikyuu/trade_sys/signal/crt/SG_Single.h +56 -0
  851. hikyuu/include/hikyuu/trade_sys/signal/crt/__init__.py +1 -0
  852. hikyuu/include/hikyuu/trade_sys/signal/imp/AllwaysBuySignal.h +25 -0
  853. hikyuu/include/hikyuu/trade_sys/signal/imp/BandSignal.h +46 -0
  854. hikyuu/include/hikyuu/trade_sys/signal/imp/BandSignal2.h +47 -0
  855. hikyuu/include/hikyuu/trade_sys/signal/imp/BoolSignal.h +46 -0
  856. hikyuu/include/hikyuu/trade_sys/signal/imp/CrossGoldSignal.h +46 -0
  857. hikyuu/include/hikyuu/trade_sys/signal/imp/CrossSignal.h +46 -0
  858. hikyuu/include/hikyuu/trade_sys/signal/imp/CycleSignal.h +25 -0
  859. hikyuu/include/hikyuu/trade_sys/signal/imp/ManualSignal.h +23 -0
  860. hikyuu/include/hikyuu/trade_sys/signal/imp/OneSideSignal.h +46 -0
  861. hikyuu/include/hikyuu/trade_sys/signal/imp/SingleSignal.h +45 -0
  862. hikyuu/include/hikyuu/trade_sys/signal/imp/SingleSignal2.h +45 -0
  863. hikyuu/include/hikyuu/trade_sys/signal/imp/__init__.py +1 -0
  864. hikyuu/include/hikyuu/trade_sys/signal/imp/logic/AddSignal.h +19 -0
  865. hikyuu/include/hikyuu/trade_sys/signal/imp/logic/AddValueSignal.h +19 -0
  866. hikyuu/include/hikyuu/trade_sys/signal/imp/logic/AndSignal.h +19 -0
  867. hikyuu/include/hikyuu/trade_sys/signal/imp/logic/DivSignal.h +19 -0
  868. hikyuu/include/hikyuu/trade_sys/signal/imp/logic/DivValueSignal.h +22 -0
  869. hikyuu/include/hikyuu/trade_sys/signal/imp/logic/MulSignal.h +19 -0
  870. hikyuu/include/hikyuu/trade_sys/signal/imp/logic/MulValueSignal.h +19 -0
  871. hikyuu/include/hikyuu/trade_sys/signal/imp/logic/OperatorSignal.h +70 -0
  872. hikyuu/include/hikyuu/trade_sys/signal/imp/logic/OperatorValueSignal.h +68 -0
  873. hikyuu/include/hikyuu/trade_sys/signal/imp/logic/OrSignal.h +19 -0
  874. hikyuu/include/hikyuu/trade_sys/signal/imp/logic/SubSignal.h +19 -0
  875. hikyuu/include/hikyuu/trade_sys/signal/imp/logic/SubValueSignal.h +22 -0
  876. hikyuu/include/hikyuu/trade_sys/signal/imp/logic/__init__.py +1 -0
  877. hikyuu/include/hikyuu/trade_sys/slippage/SlippageBase.h +175 -0
  878. hikyuu/include/hikyuu/trade_sys/slippage/__init__.py +1 -0
  879. hikyuu/include/hikyuu/trade_sys/slippage/build_in.h +15 -0
  880. hikyuu/include/hikyuu/trade_sys/slippage/crt/SP_FixedPercent.h +26 -0
  881. hikyuu/include/hikyuu/trade_sys/slippage/crt/SP_FixedValue.h +26 -0
  882. hikyuu/include/hikyuu/trade_sys/slippage/crt/__init__.py +1 -0
  883. hikyuu/include/hikyuu/trade_sys/slippage/imp/FixedPercentSlippage.h +28 -0
  884. hikyuu/include/hikyuu/trade_sys/slippage/imp/FixedValueSlippage.h +28 -0
  885. hikyuu/include/hikyuu/trade_sys/slippage/imp/__init__.py +1 -0
  886. hikyuu/include/hikyuu/trade_sys/stoploss/StoplossBase.h +204 -0
  887. hikyuu/include/hikyuu/trade_sys/stoploss/__init__.py +1 -0
  888. hikyuu/include/hikyuu/trade_sys/stoploss/build_in.h +16 -0
  889. hikyuu/include/hikyuu/trade_sys/stoploss/crt/ST_FixedPercent.h +25 -0
  890. hikyuu/include/hikyuu/trade_sys/stoploss/crt/ST_Indicator.h +21 -0
  891. hikyuu/include/hikyuu/trade_sys/stoploss/crt/ST_Saftyloss.h +37 -0
  892. hikyuu/include/hikyuu/trade_sys/stoploss/crt/__init__.py +1 -0
  893. hikyuu/include/hikyuu/trade_sys/stoploss/imp/FixedPercentStoploss.h +30 -0
  894. hikyuu/include/hikyuu/trade_sys/stoploss/imp/IndicatorStoploss.h +49 -0
  895. hikyuu/include/hikyuu/trade_sys/stoploss/imp/__init__.py +1 -0
  896. hikyuu/include/hikyuu/trade_sys/system/System.h +653 -0
  897. hikyuu/include/hikyuu/trade_sys/system/SystemPart.h +54 -0
  898. hikyuu/include/hikyuu/trade_sys/system/TradeRequest.h +97 -0
  899. hikyuu/include/hikyuu/trade_sys/system/__init__.py +1 -0
  900. hikyuu/include/hikyuu/trade_sys/system/build_in.h +15 -0
  901. hikyuu/include/hikyuu/trade_sys/system/crt/SYS_Simple.h +50 -0
  902. hikyuu/include/hikyuu/trade_sys/system/crt/SYS_WalkForward.h +21 -0
  903. hikyuu/include/hikyuu/trade_sys/system/crt/__init__.py +1 -0
  904. hikyuu/include/hikyuu/trade_sys/system/imp/DelegateSystem.h +50 -0
  905. hikyuu/include/hikyuu/trade_sys/system/imp/WalkForwardSystem.h +69 -0
  906. hikyuu/include/hikyuu/trade_sys/system/imp/WalkForwardTradeManager.h +470 -0
  907. hikyuu/include/hikyuu/trade_sys/system/imp/__init__.py +1 -0
  908. hikyuu/include/hikyuu/utilities/ConnectPool.h +163 -0
  909. hikyuu/include/hikyuu/utilities/DllLoader.h +226 -0
  910. hikyuu/include/hikyuu/utilities/FilterNode.h +267 -0
  911. hikyuu/include/hikyuu/utilities/LRUCache11.h +230 -0
  912. hikyuu/include/hikyuu/utilities/Log.h +438 -0
  913. hikyuu/include/hikyuu/utilities/Null.h +176 -0
  914. hikyuu/include/hikyuu/utilities/Parameter.h +511 -0
  915. hikyuu/include/hikyuu/utilities/ResourcePool.h +636 -0
  916. hikyuu/include/hikyuu/utilities/SpendTimer.h +305 -0
  917. hikyuu/include/hikyuu/utilities/TimerManager.h +552 -0
  918. hikyuu/include/hikyuu/utilities/__init__.py +1 -0
  919. hikyuu/include/hikyuu/utilities/any_to_string.h +142 -0
  920. hikyuu/include/hikyuu/utilities/arithmetic.h +411 -0
  921. hikyuu/include/hikyuu/utilities/base64.h +52 -0
  922. hikyuu/include/hikyuu/utilities/config.h +39 -0
  923. hikyuu/include/hikyuu/utilities/cppdef.h +25 -0
  924. hikyuu/include/hikyuu/utilities/datetime/Datetime.h +460 -0
  925. hikyuu/include/hikyuu/utilities/datetime/TimeDelta.h +357 -0
  926. hikyuu/include/hikyuu/utilities/datetime/__init__.py +1 -0
  927. hikyuu/include/hikyuu/utilities/db_connect/AutoTransAction.h +124 -0
  928. hikyuu/include/hikyuu/utilities/db_connect/DBCondition.h +252 -0
  929. hikyuu/include/hikyuu/utilities/db_connect/DBConnect.h +30 -0
  930. hikyuu/include/hikyuu/utilities/db_connect/DBConnectBase.h +658 -0
  931. hikyuu/include/hikyuu/utilities/db_connect/DBUpgrade.h +28 -0
  932. hikyuu/include/hikyuu/utilities/db_connect/SQLException.h +62 -0
  933. hikyuu/include/hikyuu/utilities/db_connect/SQLResultSet.h +248 -0
  934. hikyuu/include/hikyuu/utilities/db_connect/SQLStatementBase.h +305 -0
  935. hikyuu/include/hikyuu/utilities/db_connect/TableMacro.h +2579 -0
  936. hikyuu/include/hikyuu/utilities/db_connect/__init__.py +1 -0
  937. hikyuu/include/hikyuu/utilities/db_connect/mysql/MySQLConnect.h +60 -0
  938. hikyuu/include/hikyuu/utilities/db_connect/mysql/MySQLStatement.h +88 -0
  939. hikyuu/include/hikyuu/utilities/db_connect/mysql/__init__.py +1 -0
  940. hikyuu/include/hikyuu/utilities/db_connect/sqlite/SQLiteConnect.h +89 -0
  941. hikyuu/include/hikyuu/utilities/db_connect/sqlite/SQLiteStatement.h +71 -0
  942. hikyuu/include/hikyuu/utilities/db_connect/sqlite/SQLiteUtil.h +80 -0
  943. hikyuu/include/hikyuu/utilities/db_connect/sqlite/__init__.py +1 -0
  944. hikyuu/include/hikyuu/utilities/exception.h +52 -0
  945. hikyuu/include/hikyuu/utilities/http_client/HttpClient.h +229 -0
  946. hikyuu/include/hikyuu/utilities/http_client/__init__.py +1 -0
  947. hikyuu/include/hikyuu/utilities/http_client/nng_wrap.h +517 -0
  948. hikyuu/include/hikyuu/utilities/http_client/url.h +25 -0
  949. hikyuu/include/hikyuu/utilities/ini_parser/IniParser.h +104 -0
  950. hikyuu/include/hikyuu/utilities/ini_parser/__init__.py +1 -0
  951. hikyuu/include/hikyuu/utilities/md5.h +41 -0
  952. hikyuu/include/hikyuu/utilities/moFileReader.h +836 -0
  953. hikyuu/include/hikyuu/utilities/node/NodeClient.h +175 -0
  954. hikyuu/include/hikyuu/utilities/node/NodeError.h +66 -0
  955. hikyuu/include/hikyuu/utilities/node/NodeMessage.h +80 -0
  956. hikyuu/include/hikyuu/utilities/node/NodeServer.h +246 -0
  957. hikyuu/include/hikyuu/utilities/node/__init__.py +1 -0
  958. hikyuu/include/hikyuu/utilities/os.h +115 -0
  959. hikyuu/include/hikyuu/utilities/osdef.h +159 -0
  960. hikyuu/include/hikyuu/utilities/plugin/PluginBase.h +47 -0
  961. hikyuu/include/hikyuu/utilities/plugin/PluginClient.h +55 -0
  962. hikyuu/include/hikyuu/utilities/plugin/PluginLoader.h +118 -0
  963. hikyuu/include/hikyuu/utilities/plugin/PluginManager.h +72 -0
  964. hikyuu/include/hikyuu/utilities/plugin/__init__.py +1 -0
  965. hikyuu/include/hikyuu/utilities/runtimeinfo.h +35 -0
  966. hikyuu/include/hikyuu/utilities/snowflake.h +110 -0
  967. hikyuu/include/hikyuu/utilities/string_view.h +70 -0
  968. hikyuu/include/hikyuu/utilities/thread/FuncWrapper.h +85 -0
  969. hikyuu/include/hikyuu/utilities/thread/GlobalMQStealThreadPool.h +315 -0
  970. hikyuu/include/hikyuu/utilities/thread/GlobalMQThreadPool.h +271 -0
  971. hikyuu/include/hikyuu/utilities/thread/GlobalStealThreadPool.h +310 -0
  972. hikyuu/include/hikyuu/utilities/thread/GlobalThreadPool.h +224 -0
  973. hikyuu/include/hikyuu/utilities/thread/InterruptFlag.h +46 -0
  974. hikyuu/include/hikyuu/utilities/thread/MQStealQueue.h +112 -0
  975. hikyuu/include/hikyuu/utilities/thread/MQThreadPool.h +238 -0
  976. hikyuu/include/hikyuu/utilities/thread/ThreadPool.h +203 -0
  977. hikyuu/include/hikyuu/utilities/thread/ThreadSafeQueue.h +105 -0
  978. hikyuu/include/hikyuu/utilities/thread/WorkStealQueue.h +105 -0
  979. hikyuu/include/hikyuu/utilities/thread/__init__.py +1 -0
  980. hikyuu/include/hikyuu/utilities/thread/algorithm.h +116 -0
  981. hikyuu/include/hikyuu/utilities/thread/thread.h +14 -0
  982. hikyuu/include/hikyuu/version.h +24 -0
  983. hikyuu/include/hikyuu/views/__init__.py +1 -0
  984. hikyuu/include/hikyuu/views/arrow_common.h +38 -0
  985. hikyuu/include/hikyuu/views/arrow_views.h +117 -0
  986. hikyuu/indicator/__init__.py +28 -0
  987. hikyuu/indicator/indicator.py +119 -0
  988. hikyuu/indicator/pyind.py +47 -0
  989. hikyuu/interactive.py +68 -0
  990. hikyuu/plugin/__init__.py +1 -0
  991. hikyuu/plugin/libbacktest.so +0 -0
  992. hikyuu/plugin/libclickhousedriver.so +0 -0
  993. hikyuu/plugin/libdataserver.so +0 -0
  994. hikyuu/plugin/libdevice.so +0 -0
  995. hikyuu/plugin/libextind.so +0 -0
  996. hikyuu/plugin/libhkuextra.so +0 -0
  997. hikyuu/plugin/libimport2hdf5.so +0 -0
  998. hikyuu/plugin/libtmreport.so +0 -0
  999. hikyuu/setup.py +104 -0
  1000. hikyuu/shell/__init__.py +0 -0
  1001. hikyuu/shell/cmdserver.py +126 -0
  1002. hikyuu/shell/hkucmd.py +110 -0
  1003. hikyuu/shell/hkushell.py +20 -0
  1004. hikyuu/strategy/__init__.py +2 -0
  1005. hikyuu/strategy/strategy_demo1.py +53 -0
  1006. hikyuu/strategy/strategy_demo2.py +47 -0
  1007. hikyuu/strategy/strategy_demo3.py +24 -0
  1008. hikyuu/test/AllocateFunds.py +25 -0
  1009. hikyuu/test/Condition.py +95 -0
  1010. hikyuu/test/Datetime.py +61 -0
  1011. hikyuu/test/Environment.py +88 -0
  1012. hikyuu/test/Indicator.py +233 -0
  1013. hikyuu/test/KData.py +64 -0
  1014. hikyuu/test/MarketInfo.py +26 -0
  1015. hikyuu/test/MoneyManager.py +88 -0
  1016. hikyuu/test/Parameter.py +62 -0
  1017. hikyuu/test/ProfitGoal.py +83 -0
  1018. hikyuu/test/Signal.py +160 -0
  1019. hikyuu/test/Slippage.py +88 -0
  1020. hikyuu/test/Stock.py +127 -0
  1021. hikyuu/test/StockTypeInfo.py +47 -0
  1022. hikyuu/test/Stoploss.py +86 -0
  1023. hikyuu/test/TradeCost.py +71 -0
  1024. hikyuu/test/__init__.py +0 -0
  1025. hikyuu/test/test.py +63 -0
  1026. hikyuu/test/test_init.py +95 -0
  1027. hikyuu/test/test_real_tdx_import.py +336 -0
  1028. hikyuu/test/test_tdx_import.py +315 -0
  1029. hikyuu/test/test_tdx_real_data_import.py +281 -0
  1030. hikyuu/tools/__init__.py +1 -0
  1031. hikyuu/tools/copy_file.py +16 -0
  1032. hikyuu/tools/delete_index.py +50 -0
  1033. hikyuu/tools/fenge.py +139 -0
  1034. hikyuu/tools/h5_data_clear.py +163 -0
  1035. hikyuu/tools/mysql_clear_last_day_data.py +61 -0
  1036. hikyuu/tools/update_block_info.py +168 -0
  1037. hikyuu/trade_manage/__init__.py +30 -0
  1038. hikyuu/trade_manage/__init__.pyi +656 -0
  1039. hikyuu/trade_manage/broker.py +95 -0
  1040. hikyuu/trade_manage/broker.pyi +54 -0
  1041. hikyuu/trade_manage/broker_easytrader.py +63 -0
  1042. hikyuu/trade_manage/broker_easytrader.pyi +21 -0
  1043. hikyuu/trade_manage/broker_mail.py +101 -0
  1044. hikyuu/trade_manage/broker_mail.pyi +55 -0
  1045. hikyuu/trade_manage/trade.py +56 -0
  1046. hikyuu/trade_manage/trade.pyi +650 -0
  1047. hikyuu/trade_sys/__init__.py +42 -0
  1048. hikyuu/trade_sys/trade_sys.py +252 -0
  1049. hikyuu/util/__init__.py +51 -0
  1050. hikyuu/util/__init__.pyi +56 -0
  1051. hikyuu/util/check.py +161 -0
  1052. hikyuu/util/check.pyi +63 -0
  1053. hikyuu/util/mylog.py +291 -0
  1054. hikyuu/util/mylog.pyi +72 -0
  1055. hikyuu/util/notebook.py +47 -0
  1056. hikyuu/util/notebook.pyi +23 -0
  1057. hikyuu/util/singleton.py +29 -0
  1058. hikyuu/util/singleton.pyi +18 -0
  1059. hikyuu/util/slice.py +43 -0
  1060. hikyuu/util/timeout.py +83 -0
  1061. hikyuu-2.6.8.dist-info/METADATA +172 -0
  1062. hikyuu-2.6.8.dist-info/RECORD +1066 -0
  1063. hikyuu-2.6.8.dist-info/WHEEL +5 -0
  1064. hikyuu-2.6.8.dist-info/entry_points.txt +4 -0
  1065. hikyuu-2.6.8.dist-info/licenses/LICENSE +201 -0
  1066. hikyuu-2.6.8.dist-info/top_level.txt +123 -0
@@ -0,0 +1,28 @@
1
+ /*
2
+ * FixedCapitalMoneyManager.h
3
+ *
4
+ * Created on: 2016年5月3日
5
+ * Author: Administrator
6
+ */
7
+
8
+ #pragma once
9
+ #ifndef TRADE_SYS_MONEYMANAGER_IMP_FIXEDCAPITALMONEYMANAGER_H_
10
+ #define TRADE_SYS_MONEYMANAGER_IMP_FIXEDCAPITALMONEYMANAGER_H_
11
+
12
+ #include "../MoneyManagerBase.h"
13
+
14
+ namespace hku {
15
+
16
+ class FixedCapitalMoneyManager : public MoneyManagerBase {
17
+ MONEY_MANAGER_IMP(FixedCapitalMoneyManager)
18
+ MONEY_MANAGER_NO_PRIVATE_MEMBER_SERIALIZATION
19
+
20
+ public:
21
+ FixedCapitalMoneyManager();
22
+ virtual ~FixedCapitalMoneyManager();
23
+ virtual void _checkParam(const string& name) const override;
24
+ };
25
+
26
+ } /* namespace hku */
27
+
28
+ #endif /* TRADE_SYS_MONEYMANAGER_IMP_FIXEDCAPITALMONEYMANAGER_H_ */
@@ -0,0 +1,38 @@
1
+ /*
2
+ * FixedCountMoneyManager.h
3
+ *
4
+ * Created on: 2013-4-19
5
+ * Author: fasiondog
6
+ */
7
+
8
+ #pragma once
9
+ #ifndef FIXEDCOUNTMONEYMANAGER_H_
10
+ #define FIXEDCOUNTMONEYMANAGER_H_
11
+
12
+ #include "../MoneyManagerBase.h"
13
+
14
+ namespace hku {
15
+
16
+ /**
17
+ * 固定交易数量资金管理策略
18
+ * @details 每次买入固定的数量,如果帐户余额不足,则向帐户中存入足够的资金,保证能够执行买入。
19
+ * 即,假设资金总是充足的。
20
+ * @param n 每次买入的数量(应该是交易对象最小交易数量的整数,此处程序没有此进行判断)
21
+ * @note 1) 该策略主要用于测试和其他策略进行比较结果,本身不符合现实。\n
22
+ * 2) 该策略并不判断已有的持仓情况,如果在已有持仓情况下不能交易,则该判断应为System本身的责任
23
+ */
24
+ class FixedCountMoneyManager : public MoneyManagerBase {
25
+ MONEY_MANAGER_IMP(FixedCountMoneyManager)
26
+
27
+ virtual double _getSellShortNumber(const Datetime& datetime, const Stock& stock, price_t price,
28
+ price_t risk, SystemPart from) override;
29
+ MONEY_MANAGER_NO_PRIVATE_MEMBER_SERIALIZATION
30
+
31
+ public:
32
+ FixedCountMoneyManager();
33
+ virtual ~FixedCountMoneyManager();
34
+ virtual void _checkParam(const string& name) const override;
35
+ };
36
+
37
+ } /* namespace hku */
38
+ #endif /* FIXEDCOUNTMONEYMANAGER_H_ */
@@ -0,0 +1,44 @@
1
+ /*
2
+ * Copyright (c) 2025 hikyuu.org
3
+ *
4
+ * Created on: 2025-02-20
5
+ * Author: fasiondog
6
+ */
7
+
8
+ #pragma once
9
+ #ifndef TRADE_SYS_MONEYMANAGER_IMP_FIXEDCAPITAL_FUNDS_MM_H_
10
+ #define TRADE_SYS_MONEYMANAGER_IMP_FIXEDCAPITAL_FUNDS_MM_H_
11
+
12
+ #include "../MoneyManagerBase.h"
13
+
14
+ namespace hku {
15
+
16
+ class FixedCountTpsMM : public MoneyManagerBase {
17
+ public:
18
+ FixedCountTpsMM();
19
+ FixedCountTpsMM(const vector<double>& buy_counts, const vector<double>& sell_counts);
20
+ virtual ~FixedCountTpsMM();
21
+
22
+ virtual MoneyManagerPtr _clone() override;
23
+ virtual double _getBuyNumber(const Datetime& datetime, const Stock& stock, price_t price,
24
+ price_t risk, SystemPart from) override;
25
+ virtual double _getSellNumber(const Datetime& datetime, const Stock& stock, price_t price,
26
+ price_t risk, SystemPart from) override;
27
+
28
+ private:
29
+ vector<double> m_buy_counts;
30
+ vector<double> m_sell_counts;
31
+
32
+ #if HKU_SUPPORT_SERIALIZATION
33
+ private:
34
+ friend class boost::serialization::access;
35
+ template <class Archive>
36
+ void serialize(Archive& ar, const unsigned int version) {
37
+ ar& BOOST_SERIALIZATION_BASE_OBJECT_NVP(MoneyManagerBase);
38
+ }
39
+ #endif
40
+ };
41
+
42
+ } /* namespace hku */
43
+
44
+ #endif /* TRADE_SYS_MONEYMANAGER_IMP_FIXEDCAPITAL_FUNDS_MM_H_ */
@@ -0,0 +1,34 @@
1
+ /*
2
+ * PercentRiskMoneyManager.h
3
+ *
4
+ * Created on: 2015年4月4日
5
+ * Author: fasiondog
6
+ */
7
+
8
+ #pragma once
9
+ #ifndef TRADE_SYS_MONEYMANAGER_IMP_FIXEDPERCENTMONEYMANAGER_H_
10
+ #define TRADE_SYS_MONEYMANAGER_IMP_FIXEDPERCENTMONEYMANAGER_H_
11
+
12
+ #include "../MoneyManagerBase.h"
13
+
14
+ namespace hku {
15
+
16
+ /*
17
+ * 百分比风险模型
18
+ * 参见:《通往财务自由之路》2008年6月 机械工业出版社 范 K.撒普(Van K. Tharp.)P312
19
+ * 公式:P(头寸规模)= C(总风险)/ R(每股的风险) [这里C现金为总风险]
20
+ * 参数:percent:每笔交易总风险占总资产的百分比,如0.02表示总资产的2%
21
+ */
22
+ class HKU_API FixedPercentMoneyManager : public MoneyManagerBase {
23
+ MONEY_MANAGER_IMP(FixedPercentMoneyManager)
24
+ MONEY_MANAGER_NO_PRIVATE_MEMBER_SERIALIZATION
25
+
26
+ public:
27
+ FixedPercentMoneyManager();
28
+ virtual ~FixedPercentMoneyManager();
29
+ virtual void _checkParam(const string& name) const override;
30
+ };
31
+
32
+ } /* namespace hku */
33
+
34
+ #endif /* TRADE_SYS_MONEYMANAGER_IMP_FIXEDPERCENTMONEYMANAGER_H_ */
@@ -0,0 +1,28 @@
1
+ /*
2
+ * FixedRiskMM.h
3
+ *
4
+ * Created on: 2016年5月1日
5
+ * Author: Administrator
6
+ */
7
+
8
+ #pragma once
9
+ #ifndef TRADE_SYS_MONEYMANAGER_IMP_FIXEDRISKMONEYMANAGER_H_
10
+ #define TRADE_SYS_MONEYMANAGER_IMP_FIXEDRISKMONEYMANAGER_H_
11
+
12
+ #include "../MoneyManagerBase.h"
13
+
14
+ namespace hku {
15
+
16
+ class FixedRiskMoneyManager : public MoneyManagerBase {
17
+ MONEY_MANAGER_IMP(FixedRiskMoneyManager)
18
+ MONEY_MANAGER_NO_PRIVATE_MEMBER_SERIALIZATION
19
+
20
+ public:
21
+ FixedRiskMoneyManager();
22
+ virtual ~FixedRiskMoneyManager();
23
+ virtual void _checkParam(const string& name) const override;
24
+ };
25
+
26
+ } /* namespace hku */
27
+
28
+ #endif /* TRADE_SYS_MONEYMANAGER_IMP_FIXEDRISKMONEYMANAGER_H_ */
@@ -0,0 +1,28 @@
1
+ /*
2
+ * FixedUnitsMoneyManager.h
3
+ *
4
+ * Created on: 2016年5月3日
5
+ * Author: Administrator
6
+ */
7
+
8
+ #pragma once
9
+ #ifndef TRADE_SYS_MONEYMANAGER_IMP_FIXEDUNITSMONEYMANAGER_H_
10
+ #define TRADE_SYS_MONEYMANAGER_IMP_FIXEDUNITSMONEYMANAGER_H_
11
+
12
+ #include "../MoneyManagerBase.h"
13
+
14
+ namespace hku {
15
+
16
+ class FixedUnitsMoneyManager : public MoneyManagerBase {
17
+ MONEY_MANAGER_IMP(FixedUnitsMoneyManager)
18
+ MONEY_MANAGER_NO_PRIVATE_MEMBER_SERIALIZATION
19
+
20
+ public:
21
+ FixedUnitsMoneyManager();
22
+ virtual ~FixedUnitsMoneyManager();
23
+ virtual void _checkParam(const string& name) const override;
24
+ };
25
+
26
+ } /* namespace hku */
27
+
28
+ #endif /* TRADE_SYS_MONEYMANAGER_IMP_FIXEDUNITSMONEYMANAGER_H_ */
@@ -0,0 +1,30 @@
1
+ /*
2
+ * NotMoneyManager.h
3
+ *
4
+ * Created on: 2017年5月22日
5
+ * Author: Administrator
6
+ */
7
+
8
+ #pragma once
9
+ #ifndef TRADE_SYS_MONEYMANAGER_IMP_NOTMONEYMANAGER_H_
10
+ #define TRADE_SYS_MONEYMANAGER_IMP_NOTMONEYMANAGER_H_
11
+
12
+ #include "../MoneyManagerBase.h"
13
+
14
+ namespace hku {
15
+
16
+ /*
17
+ * 无资金管理策略,即有多少钱买多少
18
+ */
19
+ class NotMoneyManager : public MoneyManagerBase {
20
+ MONEY_MANAGER_IMP(NotMoneyManager)
21
+ MONEY_MANAGER_NO_PRIVATE_MEMBER_SERIALIZATION
22
+
23
+ public:
24
+ NotMoneyManager();
25
+ virtual ~NotMoneyManager();
26
+ };
27
+
28
+ } /* namespace hku */
29
+
30
+ #endif /* TRADE_SYS_MONEYMANAGER_IMP_NOTMONEYMANAGER_H_ */
@@ -0,0 +1,28 @@
1
+ /*
2
+ * WilliamsFixedRiskMoneyManager.h
3
+ *
4
+ * Created on: 2016年5月3日
5
+ * Author: Administrator
6
+ */
7
+
8
+ #pragma once
9
+ #ifndef TRADE_SYS_MONEYMANAGER_IMP_WILLIAMSFIXEDRISKMONEYMANAGER_H_
10
+ #define TRADE_SYS_MONEYMANAGER_IMP_WILLIAMSFIXEDRISKMONEYMANAGER_H_
11
+
12
+ #include "../MoneyManagerBase.h"
13
+
14
+ namespace hku {
15
+
16
+ class WilliamsFixedRiskMoneyManager : public MoneyManagerBase {
17
+ MONEY_MANAGER_IMP(WilliamsFixedRiskMoneyManager)
18
+ MONEY_MANAGER_NO_PRIVATE_MEMBER_SERIALIZATION
19
+
20
+ public:
21
+ WilliamsFixedRiskMoneyManager();
22
+ virtual ~WilliamsFixedRiskMoneyManager();
23
+ virtual void _checkParam(const string& name) const override;
24
+ };
25
+
26
+ } /* namespace hku */
27
+
28
+ #endif /* TRADE_SYS_MONEYMANAGER_IMP_WILLIAMSFIXEDRISKMONEYMANAGER_H_ */
@@ -0,0 +1,281 @@
1
+ /*
2
+ * Copyright (c) 2024 hikyuu.org
3
+ *
4
+ * Created on: 2024-03-12
5
+ * Author: fasiondog
6
+ */
7
+
8
+ #pragma once
9
+
10
+ #include "hikyuu/KData.h"
11
+ #include "ScoreRecord.h"
12
+
13
+ namespace hku {
14
+
15
+ /**
16
+ * 合成多因子,当只有一个因子时相当于简易的评分板
17
+ * @ingroup MultiFactor
18
+ */
19
+ class HKU_API MultiFactorBase : public enable_shared_from_this<MultiFactorBase> {
20
+ PARAMETER_SUPPORT_WITH_CHECK
21
+
22
+ public:
23
+ typedef Indicator::value_t value_t;
24
+ friend HKU_API std::ostream& operator<<(std::ostream&, const MultiFactorBase&);
25
+
26
+ public:
27
+ MultiFactorBase();
28
+ explicit MultiFactorBase(const string& name);
29
+ MultiFactorBase(const IndicatorList& inds, const StockList& stks, const KQuery& query,
30
+ const Stock& ref_stk, const string& name, int ic_n, bool spearman, int mode,
31
+ bool save_all_factors);
32
+ MultiFactorBase(const MultiFactorBase&);
33
+ virtual ~MultiFactorBase() = default;
34
+
35
+ /** 获取名称 */
36
+ const string& name() const {
37
+ return m_name;
38
+ }
39
+
40
+ /** 设置名称 */
41
+ void name(const string& name) {
42
+ m_name = name;
43
+ }
44
+
45
+ /** 获取参考日期列表 */
46
+ const DatetimeList& getDatetimeList();
47
+
48
+ /** 获取查询范围 */
49
+ const KQuery& getQuery() const {
50
+ return m_query;
51
+ }
52
+
53
+ /** 设置查询范围 */
54
+ void setQuery(const KQuery& query);
55
+
56
+ /** 获取参考证券 */
57
+ const Stock& getRefStock() const {
58
+ return m_ref_stk;
59
+ }
60
+
61
+ /** 设置参考证券 */
62
+ void setRefStock(const Stock& stk);
63
+
64
+ /** 获取证券列表 */
65
+ const StockList& getStockList() const {
66
+ return m_stks;
67
+ }
68
+
69
+ /** 设置计算范围证券列表 */
70
+ void setStockList(const StockList& stks);
71
+
72
+ /** 获取证券列表当前证券数量 */
73
+ size_t getStockListNumber() const {
74
+ return m_stks.size();
75
+ }
76
+
77
+ /** 获取原始因子公式列表 */
78
+ const IndicatorList& getRefIndicators() const {
79
+ return m_inds;
80
+ }
81
+
82
+ /** 设置因子列表 */
83
+ void setRefIndicators(const IndicatorList& inds);
84
+
85
+ /** 获取指定证券合成因子 */
86
+ const Indicator& getFactor(const Stock&);
87
+
88
+ /**
89
+ * 获取所有证券合成后的新因子,顺序与传入的证券组合相同
90
+ */
91
+ const IndicatorList& getAllFactors();
92
+
93
+ /** 获取指定日期截面的所有因子值,已经降序排列 */
94
+ ScoreRecordList getScores(const Datetime&);
95
+
96
+ ScoreRecordList getScores(const Datetime& date, size_t start, size_t end = Null<size_t>());
97
+
98
+ /**
99
+ * 获取指定日期截面 [start, end] 范围内的因子值(评分), 并通过filer进行过滤
100
+ * @param date 指定日期
101
+ * @param start 排序起始点
102
+ * @param end 排序起始点(不含该点)
103
+ * @param filter 过滤函数
104
+ */
105
+ ScoreRecordList getScores(const Datetime& date, size_t start, size_t end,
106
+ std::function<bool(const ScoreRecord&)>&& filter);
107
+
108
+ ScoreRecordList getScores(const Datetime& date, size_t start, size_t end,
109
+ std::function<bool(const Datetime&, const ScoreRecord&)>&& filter);
110
+
111
+ /** 获取所有截面数据,已按降序排列 */
112
+ const vector<ScoreRecordList>& getAllScores();
113
+
114
+ /**
115
+ * 获取合成因子的IC, 长度与参考日期同 (非严格IC模式)
116
+ * @note ndays 对于使用 IC/ICIR 加权的新因子,最好保持好 ic_n 一致,
117
+ * 但对于等权计算的新因子,不一定非要使用 ic_n 计算。
118
+ * 所以,ndays 增加了一个特殊值 0, 表示直接使用 ic_n 参数计算 IC
119
+ * @param ndays 计算相对 ndays 日收益率的IC值
120
+ */
121
+ Indicator getIC(int ndays = 0);
122
+
123
+ /**
124
+ * 获取合成因子的 ICIR
125
+ * @param ir_n 计算 IR 的 n 窗口
126
+ * @param ic_n 计算 IC 的 n 窗口
127
+ */
128
+ Indicator getICIR(int ir_n, int ic_n = 0);
129
+
130
+ /**
131
+ * 获取所有处理过的原始因子值(归一化、标准化)
132
+ * @note 考虑到内存占用,该数据没有缓存,一般用与测试或者想查看处理过的原始因子值
133
+ * @return vector<IndicatorList> stks x inds
134
+ */
135
+ vector<IndicatorList> getAllSrcFactors();
136
+
137
+ void reset();
138
+
139
+ typedef std::shared_ptr<MultiFactorBase> MultiFactorPtr;
140
+ MultiFactorPtr clone();
141
+
142
+ virtual void _reset() {}
143
+ virtual MultiFactorPtr _clone() = 0;
144
+ virtual IndicatorList _calculate(const vector<IndicatorList>&) = 0;
145
+
146
+ protected:
147
+ virtual bool isPythonObject() const {
148
+ return false;
149
+ }
150
+
151
+ private:
152
+ /** 执行计算 */
153
+ void calculate();
154
+
155
+ void initParam();
156
+
157
+ protected:
158
+ void _buildIndex(); // 计算完成后创建截面索引
159
+ void _buildIndexDesc(); // 创建降序排列的索引
160
+ void _buildIndexAsc(); // 创建升序排列的索引
161
+ void _buildIndexNone(); // build index when no index
162
+
163
+ IndicatorList _getAllReturns(int ndays) const;
164
+ void _checkData();
165
+
166
+ protected:
167
+ string m_name;
168
+ IndicatorList m_inds; // 输入的原始因子列表
169
+ StockList m_stks; // 证券组合
170
+ Stock m_ref_stk; // 指定的参考证券
171
+ KQuery m_query; // 计算的日期范围条件
172
+
173
+ // 以下变量为计算后生成
174
+ DatetimeList m_ref_dates; // 依据参考证券和query计算的参考日期,合成因子和该日期对齐
175
+ unordered_map<Stock, size_t> m_stk_map; // 证券->合成后因子位置索引
176
+ IndicatorList m_all_factors; // 保存所有证券合成后的新因子
177
+ unordered_map<Datetime, size_t> m_date_index;
178
+ vector<ScoreRecordList> m_stk_factor_by_date;
179
+ Indicator m_ic;
180
+
181
+ private:
182
+ std::mutex m_mutex;
183
+ bool m_calculated{false};
184
+
185
+ //============================================
186
+ // 序列化支持
187
+ //============================================
188
+ #if HKU_SUPPORT_SERIALIZATION
189
+ private:
190
+ friend class boost::serialization::access;
191
+ template <class Archive>
192
+ void save(Archive& ar, const unsigned int version) const {
193
+ ar& BOOST_SERIALIZATION_NVP(m_name);
194
+ ar& BOOST_SERIALIZATION_NVP(m_params);
195
+ ar& BOOST_SERIALIZATION_NVP(m_inds);
196
+ ar& BOOST_SERIALIZATION_NVP(m_stks);
197
+ ar& BOOST_SERIALIZATION_NVP(m_ref_stk);
198
+ ar& BOOST_SERIALIZATION_NVP(m_query);
199
+ ar& BOOST_SERIALIZATION_NVP(m_ref_dates);
200
+ // 以下不需要保存,加载后重新计算
201
+ // ar& BOOST_SERIALIZATION_NVP(m_stk_map);
202
+ // ar& BOOST_SERIALIZATION_NVP(m_all_factors);
203
+ // ar& BOOST_SERIALIZATION_NVP(m_date_index);
204
+ // ar& BOOST_SERIALIZATION_NVP(m_ic);
205
+ // ar& BOOST_SERIALIZATION_NVP(m_calculated);
206
+ // ar& BOOST_SERIALIZATION_NVP(m_stk_factor_by_date);
207
+ }
208
+
209
+ template <class Archive>
210
+ void load(Archive& ar, const unsigned int version) {
211
+ ar& BOOST_SERIALIZATION_NVP(m_name);
212
+ ar& BOOST_SERIALIZATION_NVP(m_params);
213
+ ar& BOOST_SERIALIZATION_NVP(m_inds);
214
+ ar& BOOST_SERIALIZATION_NVP(m_stks);
215
+ ar& BOOST_SERIALIZATION_NVP(m_ref_stk);
216
+ ar& BOOST_SERIALIZATION_NVP(m_query);
217
+ ar& BOOST_SERIALIZATION_NVP(m_ref_dates);
218
+ // ar& BOOST_SERIALIZATION_NVP(m_stk_map);
219
+ // ar& BOOST_SERIALIZATION_NVP(m_all_factors);
220
+ // ar& BOOST_SERIALIZATION_NVP(m_date_index);
221
+ // ar& BOOST_SERIALIZATION_NVP(m_ic);
222
+ // ar& BOOST_SERIALIZATION_NVP(m_calculated);
223
+ // ar& BOOST_SERIALIZATION_NVP(m_stk_factor_by_date);
224
+ }
225
+
226
+ BOOST_SERIALIZATION_SPLIT_MEMBER()
227
+ #endif /* HKU_SUPPORT_SERIALIZATION */
228
+ };
229
+
230
+ #if HKU_SUPPORT_SERIALIZATION
231
+ BOOST_SERIALIZATION_ASSUME_ABSTRACT(MultiFactorBase)
232
+ #endif
233
+
234
+ #if HKU_SUPPORT_SERIALIZATION
235
+ /**
236
+ * 对于没有私有变量的继承子类,可直接使用该宏定义序列化
237
+ * @code
238
+ * class Drived: public MultiFactorBase {
239
+ * MULTIFACTOR_NO_PRIVATE_MEMBER_SERIALIZATION
240
+ *
241
+ * public:
242
+ * Drived();
243
+ * ...
244
+ * };
245
+ * @endcode
246
+ * @ingroup MultiFactor
247
+ */
248
+ #define MULTIFACTOR_NO_PRIVATE_MEMBER_SERIALIZATION \
249
+ private: \
250
+ friend class boost::serialization::access; \
251
+ template <class Archive> \
252
+ void serialize(Archive& ar, const unsigned int version) { \
253
+ ar& BOOST_SERIALIZATION_BASE_OBJECT_NVP(MultiFactorBase); \
254
+ }
255
+ #else
256
+ #define MULTIFACTOR_NO_PRIVATE_MEMBER_SERIALIZATION
257
+ #endif
258
+
259
+ typedef std::shared_ptr<MultiFactorBase> FactorPtr;
260
+ typedef std::shared_ptr<MultiFactorBase> MultiFactorPtr;
261
+ typedef std::shared_ptr<MultiFactorBase> MFPtr;
262
+
263
+ #define MULTIFACTOR_IMP(classname) \
264
+ public: \
265
+ virtual MultiFactorPtr _clone() override { \
266
+ return std::make_shared<classname>(); \
267
+ } \
268
+ virtual IndicatorList _calculate(const vector<IndicatorList>&) override;
269
+
270
+ HKU_API std::ostream& operator<<(std::ostream&, const MultiFactorBase&);
271
+ HKU_API std::ostream& operator<<(std::ostream&, const MultiFactorPtr&);
272
+
273
+ } // namespace hku
274
+
275
+ #if FMT_VERSION >= 90000
276
+ template <>
277
+ struct fmt::formatter<hku::MultiFactorBase> : ostream_formatter {};
278
+
279
+ template <>
280
+ struct fmt::formatter<hku::MultiFactorPtr> : ostream_formatter {};
281
+ #endif
@@ -0,0 +1,51 @@
1
+ /*
2
+ * Copyright (c) 2024 hikyuu.org
3
+ *
4
+ * Created on: 2024-03-17
5
+ * Author: fasiondog
6
+ */
7
+
8
+ #pragma once
9
+
10
+ #include "hikyuu/Stock.h"
11
+ #include "hikyuu/indicator/Indicator.h"
12
+
13
+ namespace hku {
14
+
15
+ struct HKU_API ScoreRecord {
16
+ typedef Indicator::value_t value_t;
17
+
18
+ Stock stock;
19
+ value_t value{0.0};
20
+
21
+ ScoreRecord() = default;
22
+ ScoreRecord(const Stock& stock_, value_t value_);
23
+
24
+ ScoreRecord(const ScoreRecord&);
25
+ ScoreRecord(ScoreRecord&&);
26
+
27
+ ScoreRecord& operator=(const ScoreRecord&);
28
+ ScoreRecord& operator=(ScoreRecord&&);
29
+ };
30
+
31
+ typedef vector<ScoreRecord> ScoreRecordList;
32
+ typedef vector<ScoreRecord> ScoreList;
33
+
34
+ HKU_API std::ostream& operator<<(std::ostream& out, const ScoreRecord& td);
35
+
36
+ HKU_API std::ostream& operator<<(std::ostream& out, const ScoreRecordList& td);
37
+
38
+ HKU_API std::ostream& operator<<(std::ostream& out, const vector<ScoreRecordList>& td);
39
+
40
+ } // namespace hku
41
+
42
+ #if FMT_VERSION >= 90000
43
+ template <>
44
+ struct fmt::formatter<hku::ScoreRecord> : ostream_formatter {};
45
+
46
+ template <>
47
+ struct fmt::formatter<hku::ScoreRecordList> : ostream_formatter {};
48
+
49
+ template <>
50
+ struct fmt::formatter<std::vector<hku::ScoreRecordList>> : ostream_formatter {};
51
+ #endif
@@ -0,0 +1,13 @@
1
+ /*
2
+ * Copyright (c) 2024 hikyuu.org
3
+ *
4
+ * Created on: 2024-03-13
5
+ * Author: fasiondog
6
+ */
7
+
8
+ #pragma once
9
+
10
+ #include "crt/MF_Weight.h"
11
+ #include "crt/MF_EqualWeight.h"
12
+ #include "crt/MF_ICWeight.h"
13
+ #include "crt/MF_ICIRWeight.h"
@@ -0,0 +1,32 @@
1
+ /*
2
+ * Copyright (c) 2024 hikyuu.org
3
+ *
4
+ * Created on: 2024-03-13
5
+ * Author: fasiondog
6
+ */
7
+
8
+ #pragma once
9
+ #include "../MultiFactorBase.h"
10
+
11
+ namespace hku {
12
+
13
+ /**
14
+ * @brief 等权重合成因子
15
+ * @param inds 原始因子列表
16
+ * @param stks 计算证券列表
17
+ * @param query 日期范围
18
+ * @param ref_stk 参考证券
19
+ * @param ic_n 默认 IC 对应的 N 日收益率
20
+ * @param spearman 默认使用 spearman 计算相关系数,否则为 pearson
21
+ * @param mode 获取截面数据时排序模式: 0-降序, 1-升序, 2-不排序
22
+ * @param save_all_factors 是否保留因子数据
23
+ * @return MultiFactorPtr
24
+ */
25
+ MultiFactorPtr HKU_API MF_EqualWeight(const IndicatorList& inds, const StockList& stks,
26
+ const KQuery& query, const Stock& ref_stk, int ic_n = 5,
27
+ bool spearman = true, int mode = 0,
28
+ bool save_all_factors = false);
29
+
30
+ MultiFactorPtr HKU_API MF_EqualWeight();
31
+
32
+ } // namespace hku
@@ -0,0 +1,33 @@
1
+ /*
2
+ * Copyright (c) 2024 hikyuu.org
3
+ *
4
+ * Created on: 2024-03-13
5
+ * Author: fasiondog
6
+ */
7
+
8
+ #pragma once
9
+
10
+ #include "../MultiFactorBase.h"
11
+
12
+ namespace hku {
13
+
14
+ /**
15
+ * @brief 滚动ICIR权重合成因子
16
+ * @param inds 原始因子列表
17
+ * @param stks 计算证券列表
18
+ * @param query 日期范围
19
+ * @param ref_stk 参考证券
20
+ * @param ic_n 默认 IC 对应的 N 日收益率
21
+ * @param ic_rolling_n IC 滚动窗口
22
+ * @param spearman 默认使用 spearman 计算相关系数,否则为 pearson
23
+ * @param mode 获取截面数据时排序模式: 0-降序, 1-升序, 2-不排序
24
+ * @param save_all_factors 是否保留因子数据
25
+ * @return MultiFactorPtr
26
+ */
27
+ MultiFactorPtr HKU_API MF_ICIRWeight(const IndicatorList& inds, const StockList& stks,
28
+ const KQuery& query, const Stock& ref_stk, int ic_n = 5,
29
+ int ic_rolling_n = 120, bool spearman = true, int mode = 0,
30
+ bool save_all_factors = false);
31
+
32
+ MultiFactorPtr HKU_API MF_ICIRWeight();
33
+ } // namespace hku