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.
- hikyuu/__init__.py +10 -0
- hikyuu/__init__.pyi +567 -560
- hikyuu/analysis/__init__.pyi +539 -519
- hikyuu/analysis/analysis.pyi +540 -520
- hikyuu/core.pyi +541 -521
- hikyuu/cpp/__init__.pyi +2 -2
- hikyuu/cpp/core310.pyd +0 -0
- hikyuu/cpp/core310.pyi +1041 -859
- hikyuu/cpp/core311.pyd +0 -0
- hikyuu/cpp/core311.pyi +1041 -859
- hikyuu/cpp/core312.pyd +0 -0
- hikyuu/cpp/core312.pyi +1041 -859
- hikyuu/cpp/core313.pyd +0 -0
- hikyuu/cpp/core313.pyi +1041 -857
- hikyuu/cpp/core39.pyd +0 -0
- hikyuu/cpp/core39.pyi +1041 -859
- hikyuu/cpp/hikyuu.dll +0 -0
- hikyuu/cpp/hikyuu.lib +0 -0
- hikyuu/cpp/i18n/zh_CN/__init__.py +0 -0
- hikyuu/cpp/i18n/zh_CN/hikyuu.mo +0 -0
- hikyuu/cpp/sqlite3.dll +0 -0
- hikyuu/data/common_clickhouse.py +0 -47
- hikyuu/data/tdx_to_h5.py +1 -1
- hikyuu/draw/__init__.pyi +1 -1
- hikyuu/draw/drawplot/__init__.pyi +9 -9
- hikyuu/draw/drawplot/bokeh_draw.pyi +556 -551
- hikyuu/draw/drawplot/common.pyi +1 -1
- hikyuu/draw/drawplot/echarts_draw.py +9 -8
- hikyuu/draw/drawplot/echarts_draw.pyi +558 -553
- hikyuu/draw/drawplot/matplotlib_draw.py +3 -3
- hikyuu/draw/drawplot/matplotlib_draw.pyi +568 -563
- hikyuu/draw/elder.pyi +11 -11
- hikyuu/draw/kaufman.py +1 -1
- hikyuu/draw/kaufman.pyi +18 -18
- hikyuu/draw/volume.pyi +10 -10
- hikyuu/examples/notebook/000-Index.ipynb +1 -1
- hikyuu/examples/notebook/001-overview.ipynb +78 -63
- hikyuu/examples/notebook/002-HowToGetStock.ipynb +259 -40
- hikyuu/examples/notebook/003-HowToGetKDataAndDraw.ipynb +49 -41
- hikyuu/examples/notebook/004-IndicatorOverview.ipynb +29 -29
- hikyuu/examples/notebook/005-Drawplot.ipynb +66 -37
- hikyuu/examples/notebook/006-TradeManager.ipynb +808 -61
- hikyuu/examples/notebook/007-SystemDetails.ipynb +23 -23
- hikyuu/examples/notebook/009-RealData.ipynb +3 -3
- hikyuu/examples/notebook/010-Portfolio.ipynb +761 -122
- hikyuu/extend.py +15 -100
- hikyuu/extend.pyi +551 -567
- hikyuu/gui/HikyuuTDX.py +2 -4
- hikyuu/gui/data/MainWindow.py +185 -174
- hikyuu/hub.pyi +6 -6
- hikyuu/include/hikyuu/DataType.h +1 -10
- hikyuu/include/hikyuu/KQuery.h +22 -28
- hikyuu/include/hikyuu/MarketInfo.h +1 -1
- hikyuu/include/hikyuu/Stock.h +15 -3
- hikyuu/include/hikyuu/StockManager.h +4 -3
- hikyuu/include/hikyuu/StockTypeInfo.h +6 -0
- hikyuu/include/hikyuu/TransRecord.h +2 -8
- hikyuu/include/hikyuu/doc.h +4 -0
- hikyuu/include/hikyuu/indicator/Indicator.h +37 -0
- hikyuu/include/hikyuu/lang.h +27 -0
- hikyuu/include/hikyuu/plugin/KDataToHdf5Importer.h +6 -1
- hikyuu/include/hikyuu/plugin/hkuextra.h +56 -0
- hikyuu/include/hikyuu/plugin/interface/HkuExtraPluginInterface.h +38 -0
- hikyuu/include/hikyuu/plugin/interface/ImportKDataToHdf5PluginInterface.h +10 -1
- hikyuu/include/hikyuu/plugin/interface/plugins.h +2 -0
- hikyuu/include/hikyuu/python/pybind_utils.h +9 -0
- hikyuu/include/hikyuu/trade_manage/TradeRecord.h +1 -1
- hikyuu/include/hikyuu/utilities/config.h +0 -2
- hikyuu/include/hikyuu/utilities/os.h +3 -0
- hikyuu/include/hikyuu/utilities/plugin/PluginLoader.h +2 -1
- hikyuu/include/hikyuu/version.h +4 -4
- hikyuu/include/hikyuu/view/MarketView.h +59 -0
- hikyuu/indicator/__init__.py +0 -1
- hikyuu/indicator/indicator.py +14 -53
- hikyuu/plugin/backtest.dll +0 -0
- hikyuu/plugin/clickhousedriver.dll +0 -0
- hikyuu/plugin/dataserver.dll +0 -0
- hikyuu/plugin/device.dll +0 -0
- hikyuu/plugin/extind.dll +0 -0
- hikyuu/plugin/hkuextra.dll +0 -0
- hikyuu/plugin/import2hdf5.dll +0 -0
- hikyuu/plugin/tmreport.dll +0 -0
- hikyuu/test/test_init.py +59 -0
- hikyuu/test/test_real_tdx_import.py +336 -0
- hikyuu/test/test_tdx_import.py +315 -0
- hikyuu/test/test_tdx_real_data_import.py +281 -0
- hikyuu/trade_manage/__init__.pyi +556 -551
- hikyuu/trade_manage/broker.pyi +3 -3
- hikyuu/trade_manage/broker_easytrader.pyi +1 -1
- hikyuu/trade_manage/trade.py +4 -65
- hikyuu/trade_manage/trade.pyi +556 -563
- hikyuu/trade_sys/__init__.py +11 -0
- hikyuu/util/__init__.pyi +0 -1
- hikyuu/util/singleton.pyi +1 -1
- {hikyuu-2.6.6.dist-info → hikyuu-2.6.7.dist-info}/METADATA +6 -4
- {hikyuu-2.6.6.dist-info → hikyuu-2.6.7.dist-info}/RECORD +102 -95
- {hikyuu-2.6.6.dist-info → hikyuu-2.6.7.dist-info}/top_level.txt +2 -1
- hikyuu/cpp/i18n/zh_CN.mo +0 -0
- hikyuu/include/hikyuu/utilities/mo/mo.h +0 -64
- hikyuu/indicator/talib_wrap.py +0 -1273
- /hikyuu/include/hikyuu/utilities/{mo/moFileReader.h → moFileReader.h} +0 -0
- /hikyuu/include/hikyuu/{utilities/mo → view}/__init__.py +0 -0
- {hikyuu-2.6.6.dist-info → hikyuu-2.6.7.dist-info}/LICENSE +0 -0
- {hikyuu-2.6.6.dist-info → hikyuu-2.6.7.dist-info}/WHEEL +0 -0
- {hikyuu-2.6.6.dist-info → hikyuu-2.6.7.dist-info}/entry_points.txt +0 -0
hikyuu/trade_manage/broker.pyi
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
from __future__ import annotations
|
|
2
|
-
import hikyuu.cpp.
|
|
3
|
-
from hikyuu.cpp.
|
|
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.
|
|
7
|
+
class OrderBrokerWrap(hikyuu.cpp.core39.OrderBrokerBase):
|
|
8
8
|
"""
|
|
9
9
|
订单代理包装类,用户可以参考自定义自己的订单代理,加入额外的处理
|
|
10
10
|
包装只有买卖操作参数只有(code, price, num)的交易接口类
|
hikyuu/trade_manage/trade.py
CHANGED
|
@@ -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
|
-
|
|
39
|
-
|
|
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
|
-
|
|
63
|
-
|
|
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):
|