hikyuu 2.6.6__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 (105) hide show
  1. hikyuu/__init__.py +10 -0
  2. hikyuu/__init__.pyi +567 -560
  3. hikyuu/analysis/__init__.pyi +539 -519
  4. hikyuu/analysis/analysis.pyi +540 -520
  5. hikyuu/core.pyi +541 -521
  6. hikyuu/cpp/__init__.pyi +2 -2
  7. hikyuu/cpp/core310.pyd +0 -0
  8. hikyuu/cpp/core310.pyi +1041 -859
  9. hikyuu/cpp/core311.pyd +0 -0
  10. hikyuu/cpp/core311.pyi +1041 -859
  11. hikyuu/cpp/core312.pyd +0 -0
  12. hikyuu/cpp/core312.pyi +1041 -859
  13. hikyuu/cpp/core313.pyd +0 -0
  14. hikyuu/cpp/core313.pyi +1041 -857
  15. hikyuu/cpp/core39.pyd +0 -0
  16. hikyuu/cpp/core39.pyi +1041 -859
  17. hikyuu/cpp/hikyuu.dll +0 -0
  18. hikyuu/cpp/hikyuu.lib +0 -0
  19. hikyuu/cpp/i18n/zh_CN/__init__.py +0 -0
  20. hikyuu/cpp/i18n/zh_CN/hikyuu.mo +0 -0
  21. hikyuu/cpp/sqlite3.dll +0 -0
  22. hikyuu/data/common_clickhouse.py +0 -47
  23. hikyuu/data/tdx_to_h5.py +1 -1
  24. hikyuu/draw/__init__.pyi +1 -1
  25. hikyuu/draw/drawplot/__init__.pyi +9 -9
  26. hikyuu/draw/drawplot/bokeh_draw.pyi +556 -551
  27. hikyuu/draw/drawplot/common.pyi +1 -1
  28. hikyuu/draw/drawplot/echarts_draw.py +9 -8
  29. hikyuu/draw/drawplot/echarts_draw.pyi +558 -553
  30. hikyuu/draw/drawplot/matplotlib_draw.py +3 -3
  31. hikyuu/draw/drawplot/matplotlib_draw.pyi +568 -563
  32. hikyuu/draw/elder.pyi +11 -11
  33. hikyuu/draw/kaufman.py +1 -1
  34. hikyuu/draw/kaufman.pyi +18 -18
  35. hikyuu/draw/volume.pyi +10 -10
  36. hikyuu/examples/notebook/000-Index.ipynb +1 -1
  37. hikyuu/examples/notebook/001-overview.ipynb +78 -63
  38. hikyuu/examples/notebook/002-HowToGetStock.ipynb +259 -40
  39. hikyuu/examples/notebook/003-HowToGetKDataAndDraw.ipynb +49 -41
  40. hikyuu/examples/notebook/004-IndicatorOverview.ipynb +29 -29
  41. hikyuu/examples/notebook/005-Drawplot.ipynb +66 -37
  42. hikyuu/examples/notebook/006-TradeManager.ipynb +808 -61
  43. hikyuu/examples/notebook/007-SystemDetails.ipynb +23 -23
  44. hikyuu/examples/notebook/009-RealData.ipynb +3 -3
  45. hikyuu/examples/notebook/010-Portfolio.ipynb +761 -122
  46. hikyuu/extend.py +15 -100
  47. hikyuu/extend.pyi +551 -567
  48. hikyuu/gui/HikyuuTDX.py +2 -4
  49. hikyuu/gui/data/MainWindow.py +185 -174
  50. hikyuu/hub.pyi +6 -6
  51. hikyuu/include/hikyuu/DataType.h +1 -10
  52. hikyuu/include/hikyuu/KQuery.h +22 -28
  53. hikyuu/include/hikyuu/MarketInfo.h +1 -1
  54. hikyuu/include/hikyuu/Stock.h +15 -3
  55. hikyuu/include/hikyuu/StockManager.h +4 -3
  56. hikyuu/include/hikyuu/StockTypeInfo.h +6 -0
  57. hikyuu/include/hikyuu/TransRecord.h +2 -8
  58. hikyuu/include/hikyuu/doc.h +4 -0
  59. hikyuu/include/hikyuu/indicator/Indicator.h +37 -0
  60. hikyuu/include/hikyuu/lang.h +27 -0
  61. hikyuu/include/hikyuu/plugin/KDataToHdf5Importer.h +6 -1
  62. hikyuu/include/hikyuu/plugin/hkuextra.h +56 -0
  63. hikyuu/include/hikyuu/plugin/interface/HkuExtraPluginInterface.h +38 -0
  64. hikyuu/include/hikyuu/plugin/interface/ImportKDataToHdf5PluginInterface.h +10 -1
  65. hikyuu/include/hikyuu/plugin/interface/plugins.h +2 -0
  66. hikyuu/include/hikyuu/python/pybind_utils.h +9 -0
  67. hikyuu/include/hikyuu/trade_manage/TradeRecord.h +1 -1
  68. hikyuu/include/hikyuu/utilities/config.h +0 -2
  69. hikyuu/include/hikyuu/utilities/os.h +3 -0
  70. hikyuu/include/hikyuu/utilities/plugin/PluginLoader.h +2 -1
  71. hikyuu/include/hikyuu/version.h +4 -4
  72. hikyuu/include/hikyuu/view/MarketView.h +59 -0
  73. hikyuu/indicator/__init__.py +0 -1
  74. hikyuu/indicator/indicator.py +14 -53
  75. hikyuu/plugin/backtest.dll +0 -0
  76. hikyuu/plugin/clickhousedriver.dll +0 -0
  77. hikyuu/plugin/dataserver.dll +0 -0
  78. hikyuu/plugin/device.dll +0 -0
  79. hikyuu/plugin/extind.dll +0 -0
  80. hikyuu/plugin/hkuextra.dll +0 -0
  81. hikyuu/plugin/import2hdf5.dll +0 -0
  82. hikyuu/plugin/tmreport.dll +0 -0
  83. hikyuu/test/test_init.py +59 -0
  84. hikyuu/test/test_real_tdx_import.py +336 -0
  85. hikyuu/test/test_tdx_import.py +315 -0
  86. hikyuu/test/test_tdx_real_data_import.py +281 -0
  87. hikyuu/trade_manage/__init__.pyi +556 -551
  88. hikyuu/trade_manage/broker.pyi +3 -3
  89. hikyuu/trade_manage/broker_easytrader.pyi +1 -1
  90. hikyuu/trade_manage/trade.py +4 -65
  91. hikyuu/trade_manage/trade.pyi +556 -563
  92. hikyuu/trade_sys/__init__.py +11 -0
  93. hikyuu/util/__init__.pyi +0 -1
  94. hikyuu/util/singleton.pyi +1 -1
  95. {hikyuu-2.6.6.dist-info → hikyuu-2.6.7.dist-info}/METADATA +6 -4
  96. {hikyuu-2.6.6.dist-info → hikyuu-2.6.7.dist-info}/RECORD +102 -95
  97. {hikyuu-2.6.6.dist-info → hikyuu-2.6.7.dist-info}/top_level.txt +2 -1
  98. hikyuu/cpp/i18n/zh_CN.mo +0 -0
  99. hikyuu/include/hikyuu/utilities/mo/mo.h +0 -64
  100. hikyuu/indicator/talib_wrap.py +0 -1273
  101. /hikyuu/include/hikyuu/utilities/{mo/moFileReader.h → moFileReader.h} +0 -0
  102. /hikyuu/include/hikyuu/{utilities/mo → view}/__init__.py +0 -0
  103. {hikyuu-2.6.6.dist-info → hikyuu-2.6.7.dist-info}/LICENSE +0 -0
  104. {hikyuu-2.6.6.dist-info → hikyuu-2.6.7.dist-info}/WHEEL +0 -0
  105. {hikyuu-2.6.6.dist-info → hikyuu-2.6.7.dist-info}/entry_points.txt +0 -0
@@ -1,10 +1,10 @@
1
1
  from __future__ import annotations
2
- import hikyuu.cpp.core312
3
- from hikyuu.cpp.core312 import OrderBrokerBase
2
+ import hikyuu.cpp.core39
3
+ from hikyuu.cpp.core39 import OrderBrokerBase
4
4
  from hikyuu.util.mylog import hku_error
5
5
  import json as json
6
6
  __all__ = ['OrderBrokerBase', 'OrderBrokerWrap', 'TestOrderBroker', 'crtOB', 'hku_error', 'json']
7
- class OrderBrokerWrap(hikyuu.cpp.core312.OrderBrokerBase):
7
+ class OrderBrokerWrap(hikyuu.cpp.core39.OrderBrokerBase):
8
8
  """
9
9
  订单代理包装类,用户可以参考自定义自己的订单代理,加入额外的处理
10
10
  包装只有买卖操作参数只有(code, price, num)的交易接口类
@@ -1,5 +1,5 @@
1
1
  from __future__ import annotations
2
- from hikyuu.cpp.core312 import Datetime
2
+ from hikyuu.cpp.core39 import Datetime
3
3
  from hikyuu.util.mylog import hku_info
4
4
  __all__ = ['Datetime', 'EasyTraderOrderBroker', 'hku_info']
5
5
  class EasyTraderOrderBroker:
@@ -29,78 +29,17 @@
29
29
  # 1. 20130213, Added by fasiondog
30
30
  # ===============================================================================
31
31
 
32
- from hikyuu.util.slice import list_getitem
33
32
  from hikyuu import *
34
33
  import numpy as np
35
34
  import pandas as pd
36
35
 
37
36
 
38
- def TradeList_to_np(t_list):
39
- """转化为numpy结构数组"""
40
- t_type = np.dtype(
41
- {
42
- 'names': [
43
- '交易日期', '证券代码', '证券名称', '业务名称', '计划交易价格', '实际成交价格', '目标价格', '成交数量', '佣金', '印花税', '过户费', '其它成本',
44
- '交易总成本', '止损价', '现金余额', '信号来源'
45
- ],
46
- 'formats':
47
- ['datetime64[D]', 'U10', 'U20', 'U10', 'd', 'd', 'd', 'i', 'd', 'd', 'd', 'd', 'd', 'd', 'd', 'U5']
48
- }
49
- )
50
- return np.array(
51
- [
52
- (
53
- t.datetime, t.stock.market_code, t.stock.name, get_business_name(t.business), t.plan_price,
54
- t.real_price, t.goal_price, t.number, t.cost.commission, t.cost.stamptax, t.cost.transferfee,
55
- t.cost.others, t.cost.total, t.stoploss, t.cash, get_system_part_name(t.part)
56
- ) for t in t_list
57
- ],
58
- dtype=t_type
59
- )
37
+ TradeRecordList.to_np = lambda self: trades_to_np(self)
38
+ TradeRecordList.to_df = lambda self: trades_to_df(self)
60
39
 
61
40
 
62
- def TradeList_to_df(t):
63
- """转化为pandas的DataFrame"""
64
- return pd.DataFrame.from_records(TradeList_to_np(t), index='交易日期')
65
-
66
-
67
- TradeRecordList.to_np = TradeList_to_np
68
- TradeRecordList.to_df = TradeList_to_df
69
-
70
-
71
- def PositionList_to_np(pos_list):
72
- """转化为numpy结构数组"""
73
- t_type = np.dtype(
74
- {
75
- 'names': ['证券代码', '证券名称', '买入日期', '已持仓天数', '持仓数量', '投入金额', '当前市值', '盈亏金额', '盈亏比例'],
76
- 'formats': ['U10', 'U20', 'datetime64[D]', 'i', 'i', 'd', 'd', 'd', 'd']
77
- }
78
- )
79
- sm = StockManager.instance()
80
- query = Query(-1)
81
- data = []
82
- for pos in pos_list:
83
- invest = pos.buy_money - pos.sell_money + pos.total_cost
84
- k = pos.stock.get_kdata(query)
85
- cur_val = k[0].close * pos.number
86
- bonus = cur_val - invest
87
- date_list = sm.get_trading_calendar(Query(Datetime(pos.take_datetime.date())))
88
- data.append(
89
- (
90
- pos.stock.market_code, pos.stock.name, pos.take_datetime, len(date_list), pos.number, invest,
91
- cur_val, bonus, 100 * bonus / invest
92
- )
93
- )
94
- return np.array(data, dtype=t_type)
95
-
96
-
97
- def PositionList_to_df(pos_list):
98
- """转化为pandas的DataFrame"""
99
- return pd.DataFrame.from_records(PositionList_to_np(pos_list), index='证券代码')
100
-
101
-
102
- PositionRecordList.to_np = PositionList_to_np
103
- PositionRecordList.to_df = PositionList_to_df
41
+ PositionRecordList.to_np = lambda self: positions_to_np(self)
42
+ PositionRecordList.to_df = lambda self: positions_to_df(self)
104
43
 
105
44
 
106
45
  def Performance_to_df(per):