hikyuu 2.1.4__cp311-none-win_amd64.whl → 2.1.5__cp311-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/cpp/core311.pyd +0 -0
- hikyuu/cpp/hikyuu.dll +0 -0
- hikyuu/cpp/sqlite3.dll +0 -0
- hikyuu/data/mysql_upgrade/0022.sql +5 -0
- hikyuu/data/sqlite_upgrade/0023.sql +7 -0
- hikyuu/fetcher/stock/zh_stock_a_pytdx.py +3 -3
- hikyuu/gui/start_qmt.py +99 -13
- hikyuu/include/hikyuu/indicator/crt/DMA.h +1 -7
- hikyuu/include/hikyuu/indicator/imp/IDma.h +47 -0
- hikyuu/include/hikyuu/version.h +4 -4
- {hikyuu-2.1.4.dist-info → hikyuu-2.1.5.dist-info}/METADATA +1 -1
- {hikyuu-2.1.4.dist-info → hikyuu-2.1.5.dist-info}/RECORD +16 -13
- {hikyuu-2.1.4.dist-info → hikyuu-2.1.5.dist-info}/LICENSE +0 -0
- {hikyuu-2.1.4.dist-info → hikyuu-2.1.5.dist-info}/WHEEL +0 -0
- {hikyuu-2.1.4.dist-info → hikyuu-2.1.5.dist-info}/entry_points.txt +0 -0
- {hikyuu-2.1.4.dist-info → hikyuu-2.1.5.dist-info}/top_level.txt +0 -0
hikyuu/cpp/core311.pyd
CHANGED
|
Binary file
|
hikyuu/cpp/hikyuu.dll
CHANGED
|
Binary file
|
hikyuu/cpp/sqlite3.dll
CHANGED
|
Binary file
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
DELETE FROM `hku_base`.`stkweight`;
|
|
2
|
+
UPDATE `hku_base`.`coderuletype` SET `codepre`=51 WHERE `codepre`=510 AND `marketid`=1;
|
|
3
|
+
UPDATE `hku_base`.`coderuletype` SET `codepre`=50 WHERE `codepre`=500 AND `marketid`=1;
|
|
4
|
+
UPDATE `hku_base`.`coderuletype` SET `codepre`=20 WHERE `codepre`=200 AND `marketid`=2;
|
|
5
|
+
UPDATE `hku_base`.`version` set `version` = 22;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
BEGIN TRANSACTION;
|
|
2
|
+
DELETE FROM `stkWeight`;
|
|
3
|
+
UPDATE `coderuletype` SET `codepre`=51 WHERE `codepre`=510 AND `marketid`=1;
|
|
4
|
+
UPDATE `coderuletype` SET `codepre`=50 WHERE `codepre`=500 AND `marketid`=1;
|
|
5
|
+
UPDATE `coderuletype` SET `codepre`=20 WHERE `codepre`=200 AND `marketid`=2;
|
|
6
|
+
UPDATE `version` set `version` = 23;
|
|
7
|
+
COMMIT;
|
|
@@ -73,7 +73,7 @@ def request_data(api, stklist, parse_one_result):
|
|
|
73
73
|
|
|
74
74
|
|
|
75
75
|
@hku_catch(ret=([], []))
|
|
76
|
-
def
|
|
76
|
+
def inner_get_spot(stocklist, ip, port, batch_func=None):
|
|
77
77
|
api = TdxHq_API()
|
|
78
78
|
hku_check(api.connect(ip, port), 'Failed connect tdx ({}:{})!'.format(ip, port))
|
|
79
79
|
|
|
@@ -107,7 +107,7 @@ def get_spot(stocklist, ip, port, batch_func=None):
|
|
|
107
107
|
|
|
108
108
|
|
|
109
109
|
@spend_time
|
|
110
|
-
def
|
|
110
|
+
def get_spot(stocklist, ip, port, batch_func=None):
|
|
111
111
|
hosts = search_best_tdx()
|
|
112
112
|
hosts_cnt = len(hosts)
|
|
113
113
|
num = len(stocklist) // hosts_cnt
|
|
@@ -123,7 +123,7 @@ def get_spot2(stocklist, ip, port, batch_func=None):
|
|
|
123
123
|
break
|
|
124
124
|
|
|
125
125
|
def do_inner(param):
|
|
126
|
-
ret =
|
|
126
|
+
ret = inner_get_spot(param[0], param[1], param[2], param[3])
|
|
127
127
|
return ret
|
|
128
128
|
|
|
129
129
|
with futures.ThreadPoolExecutor() as executor:
|
hikyuu/gui/start_qmt.py
CHANGED
|
@@ -2,15 +2,15 @@
|
|
|
2
2
|
# -*- coding: utf-8 -*-
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
from hikyuu.fetcher.stock.zh_stock_a_qmt import parse_one_result_qmt
|
|
5
|
+
from hikyuu.fetcher.stock.zh_stock_a_qmt import parse_one_result_qmt, get_spot
|
|
6
6
|
from hikyuu.gui.spot_server import release_nng_senders, start_send_spot, end_send_spot, send_spot
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
def callback(datas):
|
|
10
10
|
records = []
|
|
11
11
|
for stock_code, data in datas.items():
|
|
12
|
-
# print(stock_code, data)
|
|
13
12
|
records.append(parse_one_result_qmt(stock_code, data))
|
|
13
|
+
# print(len(records))
|
|
14
14
|
|
|
15
15
|
if records:
|
|
16
16
|
start_send_spot()
|
|
@@ -19,18 +19,104 @@ def callback(datas):
|
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
if __name__ == "__main__":
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
import os
|
|
23
|
+
import configparser
|
|
24
|
+
|
|
25
|
+
from hikyuu.data.hku_config_template import generate_default_config
|
|
26
|
+
from hikyuu import *
|
|
27
|
+
|
|
28
|
+
config_file = os.path.expanduser('~') + "/.hikyuu/hikyuu.ini"
|
|
29
|
+
if not os.path.exists(config_file):
|
|
30
|
+
# 创建默认配置
|
|
31
|
+
hku_info("创建默认配置文件")
|
|
32
|
+
generate_default_config()
|
|
33
|
+
|
|
34
|
+
ini = configparser.ConfigParser()
|
|
35
|
+
ini.read(config_file, encoding='utf-8')
|
|
36
|
+
hku_param = Parameter()
|
|
37
|
+
hku_param["tmpdir"] = ini.get('hikyuu', 'tmpdir')
|
|
38
|
+
hku_param["datadir"] = ini.get('hikyuu', 'datadir')
|
|
39
|
+
if ini.has_option('hikyuu', 'quotation_server'):
|
|
40
|
+
hku_param["quotation_server"] = ini['hikyuu']['quotation_server']
|
|
41
|
+
|
|
42
|
+
# 不加载历史财务信息及权息数据
|
|
43
|
+
hku_param["load_history_finance"] = False
|
|
44
|
+
hku_param["load_stock_weight"] = False
|
|
45
|
+
|
|
46
|
+
base_param = Parameter()
|
|
47
|
+
base_info_config = ini.options('baseinfo')
|
|
48
|
+
for p in base_info_config:
|
|
49
|
+
base_param[p] = ini.get('baseinfo', p)
|
|
50
|
+
|
|
51
|
+
block_param = Parameter()
|
|
52
|
+
block_config = ini.options('block')
|
|
53
|
+
for p in block_config:
|
|
54
|
+
block_param[p] = ini.get('block', p)
|
|
55
|
+
|
|
56
|
+
# 不使用配置文件中的预加载参数
|
|
57
|
+
preload_param = Parameter()
|
|
58
|
+
if p in Query.get_all_ktype():
|
|
59
|
+
preload_param[p] = False
|
|
24
60
|
|
|
25
|
-
|
|
26
|
-
|
|
61
|
+
kdata_param = Parameter()
|
|
62
|
+
kdata_config = ini.options('kdata')
|
|
63
|
+
for p in kdata_config:
|
|
64
|
+
if p == "convert":
|
|
65
|
+
kdata_param[p] = ini.getboolean('kdata', p)
|
|
66
|
+
continue
|
|
67
|
+
kdata_param[p] = ini.get('kdata', p)
|
|
27
68
|
|
|
69
|
+
context = StrategyContext(["all"])
|
|
70
|
+
context.ktype_list = ["day"]
|
|
71
|
+
|
|
72
|
+
sm.init(base_param, block_param, kdata_param, preload_param, hku_param, context)
|
|
73
|
+
|
|
74
|
+
# 后续希望每次先主动获取一次全部的tick, 这里需要等待所有数据加载完毕,以便保证全部证券收到第一次tick通知
|
|
75
|
+
hku_info("waiting all data loaded ...")
|
|
76
|
+
while not sm.data_ready:
|
|
77
|
+
import time
|
|
78
|
+
time.sleep(100)
|
|
79
|
+
|
|
80
|
+
stk_list = [s for s in sm if s.valid and s.type in (
|
|
81
|
+
constant.STOCKTYPE_A, constant.STOCKTYPE_INDEX, constant.STOCKTYPE_ETF,
|
|
82
|
+
constant.STOCKTYPE_GEM, constant.STOCKTYPE_START, constant.STOCKTYPE_A_BJ)]
|
|
83
|
+
|
|
84
|
+
hku_info("start xtquant")
|
|
85
|
+
code_list = [f'{s.code}.{s.market}' for s in stk_list]
|
|
86
|
+
from xtquant import xtdata
|
|
28
87
|
xtdata.subscribe_whole_quote(code_list, callback)
|
|
29
88
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
89
|
+
# 每日 9:30 时,主动读取行情一次,以便 hikyuu 生成当日首个分钟线
|
|
90
|
+
while True:
|
|
91
|
+
try:
|
|
92
|
+
today = Datetime.today()
|
|
93
|
+
if today.day_of_week() not in (0, 6) and not sm.is_holiday(today):
|
|
94
|
+
hku_info("get full tick ...")
|
|
95
|
+
start_send_spot()
|
|
96
|
+
records = get_spot(stk_list, None, None, send_spot)
|
|
97
|
+
end_send_spot()
|
|
98
|
+
now = Datetime.now()
|
|
99
|
+
today_open = today + TimeDelta(0, 9, 30)
|
|
100
|
+
if now < today_open:
|
|
101
|
+
delta = today_open - Datetime.now()
|
|
102
|
+
else:
|
|
103
|
+
delta = today_open + Days(1) - Datetime.now()
|
|
104
|
+
hku_info(f"start timer: {delta}s")
|
|
105
|
+
time.sleep(delta.total_seconds())
|
|
106
|
+
except KeyboardInterrupt:
|
|
107
|
+
print("Ctrl-C 终止")
|
|
108
|
+
break
|
|
109
|
+
except Exception as e:
|
|
110
|
+
hku_error(e)
|
|
111
|
+
time.sleep(10)
|
|
112
|
+
|
|
113
|
+
release_nng_senders()
|
|
114
|
+
|
|
115
|
+
# try:
|
|
116
|
+
# xtdata.run()
|
|
117
|
+
# except Exception as e:
|
|
118
|
+
# hku_error(e)
|
|
119
|
+
# finally:
|
|
120
|
+
# # 退出释放资源
|
|
121
|
+
# release_nng_senders()
|
|
122
|
+
# exit(0)
|
|
@@ -27,13 +27,7 @@ namespace hku {
|
|
|
27
27
|
* @param a 动态系数
|
|
28
28
|
* @ingroup Indicator
|
|
29
29
|
*/
|
|
30
|
-
Indicator DMA(const Indicator&
|
|
31
|
-
|
|
32
|
-
inline Indicator DMA(const Indicator& ind1, const Indicator& a) {
|
|
33
|
-
Indicator dma = a * ind1 + (1 - a) * REF(ind1, 1);
|
|
34
|
-
dma.name("DMA");
|
|
35
|
-
return dma;
|
|
36
|
-
}
|
|
30
|
+
Indicator HKU_API DMA(const Indicator& x, const Indicator& a);
|
|
37
31
|
|
|
38
32
|
} // namespace hku
|
|
39
33
|
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2024 hikyuu.org
|
|
3
|
+
*
|
|
4
|
+
* Created on: 2024-09-09
|
|
5
|
+
* Author: fasiondog
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#pragma once
|
|
9
|
+
|
|
10
|
+
#include "../Indicator.h"
|
|
11
|
+
|
|
12
|
+
namespace hku {
|
|
13
|
+
|
|
14
|
+
/*
|
|
15
|
+
* 动态移动平均
|
|
16
|
+
* 用法:DMA(X,A),求X的动态移动平均。
|
|
17
|
+
* 算法:若Y=DMA(X,A) 则 Y=A*X+(1-A)*Y',其中Y'表示上一周期Y值。
|
|
18
|
+
* 例如:DMA(CLOSE,VOL/CAPITAL)表示求以换手率作平滑因子的平均价
|
|
19
|
+
*/
|
|
20
|
+
class IDma : public IndicatorImp {
|
|
21
|
+
public:
|
|
22
|
+
IDma();
|
|
23
|
+
explicit IDma(const Indicator& ref_a);
|
|
24
|
+
virtual ~IDma();
|
|
25
|
+
|
|
26
|
+
virtual void _checkParam(const string& name) const override;
|
|
27
|
+
virtual void _calculate(const Indicator& data) override;
|
|
28
|
+
virtual IndicatorImpPtr _clone() override;
|
|
29
|
+
|
|
30
|
+
private:
|
|
31
|
+
Indicator m_ref_a;
|
|
32
|
+
|
|
33
|
+
//============================================
|
|
34
|
+
// 序列化支持
|
|
35
|
+
//============================================
|
|
36
|
+
#if HKU_SUPPORT_SERIALIZATION
|
|
37
|
+
private:
|
|
38
|
+
friend class boost::serialization::access;
|
|
39
|
+
template <class Archive>
|
|
40
|
+
void serialize(Archive& ar, const unsigned int version) {
|
|
41
|
+
ar& BOOST_SERIALIZATION_BASE_OBJECT_NVP(IndicatorImp);
|
|
42
|
+
ar& BOOST_SERIALIZATION_NVP(m_ref_a);
|
|
43
|
+
}
|
|
44
|
+
#endif
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
}
|
hikyuu/include/hikyuu/version.h
CHANGED
|
@@ -12,13 +12,13 @@
|
|
|
12
12
|
#define HKU_VERSION_H
|
|
13
13
|
|
|
14
14
|
// clang-format off
|
|
15
|
-
#define HKU_VERSION "2.1.
|
|
15
|
+
#define HKU_VERSION "2.1.5"
|
|
16
16
|
#define HKU_VERSION_MAJOR 2
|
|
17
17
|
#define HKU_VERSION_MINOR 1
|
|
18
|
-
#define HKU_VERSION_ALTER
|
|
19
|
-
#define HKU_VERSION_BUILD
|
|
18
|
+
#define HKU_VERSION_ALTER 5
|
|
19
|
+
#define HKU_VERSION_BUILD 202409110745
|
|
20
20
|
#define HKU_VERSION_MODE "RELEASE"
|
|
21
|
-
#define HKU_VERSION_GIT "2.1.
|
|
21
|
+
#define HKU_VERSION_GIT "2.1.5 release.6f6597d9 (RELEASE)"
|
|
22
22
|
// clang-format on
|
|
23
23
|
|
|
24
24
|
#endif /* HKU_VERSION_H */
|
|
@@ -23,8 +23,8 @@ hikyuu/cpp/boost_date_time-mt.dll,sha256=7LN0Yx0k8NmnMICaHiU5NDGtdUnxL8i3WH4CoM3
|
|
|
23
23
|
hikyuu/cpp/boost_serialization-mt.dll,sha256=Cri8ElVb5vbEgeSPEBU9gIs_2d2sDEs8DFraTlNwE0I,218112
|
|
24
24
|
hikyuu/cpp/boost_wserialization-mt.dll,sha256=AtPBMT3u3PhlvtgAf6YzWT_vLrOCPEI1MRwEmPKspS0,156672
|
|
25
25
|
hikyuu/cpp/concrt140.dll,sha256=eCkQsj-KZexHf4hve8vcZxAzVK8mO9MMDcyrv7xQa6E,317320
|
|
26
|
-
hikyuu/cpp/core311.pyd,sha256=
|
|
27
|
-
hikyuu/cpp/hikyuu.dll,sha256=
|
|
26
|
+
hikyuu/cpp/core311.pyd,sha256=1ZvQi5_9Fs1hukzDMyDFbK3zpPwu1ScVT2u_yz-z4dI,3411968
|
|
27
|
+
hikyuu/cpp/hikyuu.dll,sha256=B0ChxrQ0lvjWkXp1Xy2YPyWf8RF9_8FgLA-lrq2J_io,6902784
|
|
28
28
|
hikyuu/cpp/hku_hdf5.dll,sha256=WhPTtLT9eAaOcLthBLArv_ps-A5xiTXrYAwXHsbKeDI,3434496
|
|
29
29
|
hikyuu/cpp/hku_hdf5_cpp.dll,sha256=KL7R_MmydRnNi6X1vrkCOPJ6x027J8IEb6vCbTrV60E,301056
|
|
30
30
|
hikyuu/cpp/hku_hdf5_hl.dll,sha256=bPgCUWb9eppYXjqL846IiLeWiB9QvRF_syGHTlqpImI,119808
|
|
@@ -37,7 +37,7 @@ hikyuu/cpp/msvcp140_1.dll,sha256=fVIjj_Wnr29KXiKbGnRlog_BfitAHaXakhWjBzvyOMI,255
|
|
|
37
37
|
hikyuu/cpp/msvcp140_2.dll,sha256=7iKzQDJoy6w_KA8aSaf6KFwNAdpgH2kU1v5qrEMGjvo,187312
|
|
38
38
|
hikyuu/cpp/msvcp140_atomic_wait.dll,sha256=qUuIolfmRRSn4Zu-xSI5Hyg4rJMH1ZetstPq-I-FTeM,57224
|
|
39
39
|
hikyuu/cpp/msvcp140_codecvt_ids.dll,sha256=FPlDVH0f2xJQWe6537FGWXr5bKrD6pkCV4WV6bDHH7Q,21392
|
|
40
|
-
hikyuu/cpp/sqlite3.dll,sha256=
|
|
40
|
+
hikyuu/cpp/sqlite3.dll,sha256=xtur6ZRK9ZI7u5xdUDAyRIT5vjeJyqSnGH5mPhMIJhg,1088512
|
|
41
41
|
hikyuu/cpp/vcruntime140.dll,sha256=1mw7Rwkc6z-NPMFlpD0oWukZIRoMD8t0SR7ldNjUZPg,98736
|
|
42
42
|
hikyuu/cpp/vcruntime140_1.dll,sha256=F1gIWmFSe0J8Q4DwyXbSmovuiJ8qxIDDVqPxZkM79w4,38304
|
|
43
43
|
hikyuu/data/__init__.py,sha256=ugyuFliEqtAwQmH4sTlc16YXKYbFWDmfyk87fErB8-8,21
|
|
@@ -83,6 +83,7 @@ hikyuu/data/mysql_upgrade/0018.sql,sha256=yF0pDriOb6ZEaNIWNe0dp4IsC2S1xQZaSJX9Wn
|
|
|
83
83
|
hikyuu/data/mysql_upgrade/0019.sql,sha256=KBi-U4t_rLXav5D6lrLFFWsIkl5C-fbtvYrCT4Bk8-E,554
|
|
84
84
|
hikyuu/data/mysql_upgrade/0020.sql,sha256=ZIK37BUA7toyexC9vk3bYwXrxu4Aml7FKVWrMiaP5a4,314
|
|
85
85
|
hikyuu/data/mysql_upgrade/0021.sql,sha256=UEP9E3WmMtuAUpCTbnXL37JgXnD5mIMyuIb4rs6Qj7A,314
|
|
86
|
+
hikyuu/data/mysql_upgrade/0022.sql,sha256=WK_uJ68SjrN4Q4b2p8nfsBDO2jqL8EbmtHbvbhqxfr0,351
|
|
86
87
|
hikyuu/data/mysql_upgrade/__init__.py,sha256=ugyuFliEqtAwQmH4sTlc16YXKYbFWDmfyk87fErB8-8,21
|
|
87
88
|
hikyuu/data/mysql_upgrade/createdb.sql,sha256=IK-x2zK7ttd7cieZ27ZzUUsDAi_oYctZ4W-HAMHhUd8,8380
|
|
88
89
|
hikyuu/data/sqlite_mem_sql/__init__.py,sha256=ugyuFliEqtAwQmH4sTlc16YXKYbFWDmfyk87fErB8-8,21
|
|
@@ -109,6 +110,7 @@ hikyuu/data/sqlite_upgrade/0019.sql,sha256=Ft22sQ__94T9cvZDiR1gqqRE5sTtix8rKCL8w
|
|
|
109
110
|
hikyuu/data/sqlite_upgrade/0020.sql,sha256=zQTtVjb6x742w4fDcqqqLgfNQRh5qhyPFWjGE5OOIlk,143
|
|
110
111
|
hikyuu/data/sqlite_upgrade/0021.sql,sha256=qUxJBE1PzmxQI61HB_pRGlPTI8wYb0Mn7JeMwToFYEs,299
|
|
111
112
|
hikyuu/data/sqlite_upgrade/0022.sql,sha256=tkG3NaGYGuzHcMup7G8MolcvwCLA-8-1bTckiqUONQg,299
|
|
113
|
+
hikyuu/data/sqlite_upgrade/0023.sql,sha256=HsHGP2F2BP1_y-jcpKYXZWdwehu9SJq9G-Ni8NGxH2c,325
|
|
112
114
|
hikyuu/data/sqlite_upgrade/__init__.py,sha256=ugyuFliEqtAwQmH4sTlc16YXKYbFWDmfyk87fErB8-8,21
|
|
113
115
|
hikyuu/data/sqlite_upgrade/createdb.sql,sha256=XXlJ9E2JK7RpsAS-hJZG9gUhT09itZVC5FUhqqrJ3l4,5552
|
|
114
116
|
hikyuu/data_driver/__init__.py,sha256=mc_vrQqcvM1k8v8yotk4oTcyjsIrBFY66PhIlN2ccD4,2315
|
|
@@ -156,7 +158,7 @@ hikyuu/fetcher/proxy/zhima.py,sha256=jag4Y1D2rj7UjqmQHeUgnnr-I_CqQKNYUOjBXTuUVW8
|
|
|
156
158
|
hikyuu/fetcher/stock/__init__.py,sha256=iMNvK8LArpRoNU0w3ef7SKslAgjMnI83n8aO0bu9H5A,121
|
|
157
159
|
hikyuu/fetcher/stock/zh_block_em.py,sha256=O98NeQzWpE5MC2oezBWvrEeNGRHxF2ZtT5q0BR8KLKA,4327
|
|
158
160
|
hikyuu/fetcher/stock/zh_stock_a_huatai.py,sha256=Lg4Pp1kOxR-6niX27lwEBJu4oEltDSALzsgiYmEUm2Q,1991
|
|
159
|
-
hikyuu/fetcher/stock/zh_stock_a_pytdx.py,sha256=
|
|
161
|
+
hikyuu/fetcher/stock/zh_stock_a_pytdx.py,sha256=JaPPsgD0IMdFeq0sVNODDCsR0d_3h1madgxdCKUDuHI,5315
|
|
160
162
|
hikyuu/fetcher/stock/zh_stock_a_qmt.py,sha256=rAhBouwzoLNSBOQoU119fnIyVIGQLOkG0bJCl6SN9yo,2135
|
|
161
163
|
hikyuu/fetcher/stock/zh_stock_a_sina_qq.py,sha256=qpvlNNrbHaQDHFGSZVXlLqvIcjd7HpLH04BEaKK9fyk,9341
|
|
162
164
|
hikyuu/flat/Spot.py,sha256=dEzyxegOv_RRN0N0DH-xxeNMFOe66XBcORqYVFie5dU,13842
|
|
@@ -168,7 +170,7 @@ hikyuu/gui/hikyuu.ico,sha256=C3PmufT23qdCyE0FfIkofUIwT-zyhCgjwLH6HMclqPk,9662
|
|
|
168
170
|
hikyuu/gui/importdata.py,sha256=ceNoyh0q4mYuaAuTpxakn8zJaOy0aalnB8-16zES0Ak,6073
|
|
169
171
|
hikyuu/gui/spot_server.py,sha256=nEDnZyCc79d9hcDuNYQ532GPVwLNVX9W8FTizqdbP-M,12105
|
|
170
172
|
hikyuu/gui/start_huatai_insight.py,sha256=AsP6UlLWErXHx8TnxS82uBIw6XXfSkItiVTzTrzwulQ,22833
|
|
171
|
-
hikyuu/gui/start_qmt.py,sha256=
|
|
173
|
+
hikyuu/gui/start_qmt.py,sha256=B8gfeD6UPJRt3kuWdMftO6M31aa5goqHUO_JENhcHqE,4147
|
|
172
174
|
hikyuu/gui/data/CollectSpotThread.py,sha256=TpckaMvm58hnPOXjDdGa7WznaMfEpcNo9g9axGXOgLo,1758
|
|
173
175
|
hikyuu/gui/data/CollectToMemThread.py,sha256=xgBn5Nno6oLCqlbie6wTtcyMPmMTRoclz2-E1UZGUcQ,5153
|
|
174
176
|
hikyuu/gui/data/CollectToMySQLThread.py,sha256=Xmj5igTSw8R9ZfaVH87zXESeLJKxaw7SlZmXcTIGK-U,7387
|
|
@@ -211,7 +213,7 @@ hikyuu/include/hikyuu/config.h,sha256=coJ3wAfuxysJy-rqWJUBHFBsALuRhrwpcUkqb5JrYu
|
|
|
211
213
|
hikyuu/include/hikyuu/debug.h,sha256=r54YJUkujUt5D9Xj11fpIw9c93kZsqU3ykljXBsqxo0,843
|
|
212
214
|
hikyuu/include/hikyuu/doc.h,sha256=M5Va0lgJSlORIkMvUhmV480V0XcxwyyL3wu_fCMcVI4,6967
|
|
213
215
|
hikyuu/include/hikyuu/hikyuu.h,sha256=D4n8yy8BLhRyceGCzAIbrTCoyvEOGa0NtygcQW6accI,1583
|
|
214
|
-
hikyuu/include/hikyuu/version.h,sha256=
|
|
216
|
+
hikyuu/include/hikyuu/version.h,sha256=kotmSzYG6DOeKizjvyC55rQPjKvdZiz-2pQ_vq4iYG4,508
|
|
215
217
|
hikyuu/include/hikyuu/analysis/__init__.py,sha256=frcCV1k9oG9oKj3dpUqdJg1PxRT2RSN_XKdLCPjaYaY,2
|
|
216
218
|
hikyuu/include/hikyuu/analysis/analysis_sys.h,sha256=gPnCrNP9Qt2g9JH04F9Y9Q1XzpwPtg4ibAvPJ9pIlbs,1709
|
|
217
219
|
hikyuu/include/hikyuu/analysis/combinate.h,sha256=--OhYTVLQ8bUNgl47V0uNO0IjSULxu7bXhYWbjNY4Ig,4196
|
|
@@ -300,7 +302,7 @@ hikyuu/include/hikyuu/indicator/crt/CVAL.h,sha256=mT3hjr2EsVOoIVqQADaRazyTFHcvcW
|
|
|
300
302
|
hikyuu/include/hikyuu/indicator/crt/DECLINE.h,sha256=EsebsSLBZekLATyhnWQwPvKuoLDvHgP_SS3LTkcVk4M,993
|
|
301
303
|
hikyuu/include/hikyuu/indicator/crt/DEVSQ.h,sha256=q8MpjLJHTaFAQ76zpJbkuHYz_9b-emjdhINRA8Z-mPA,825
|
|
302
304
|
hikyuu/include/hikyuu/indicator/crt/DIFF.h,sha256=IufKG5P1n1lv7lsm3-2iqAS3m_7WZLX-nAHZSk5O6f0,484
|
|
303
|
-
hikyuu/include/hikyuu/indicator/crt/DMA.h,sha256=
|
|
305
|
+
hikyuu/include/hikyuu/indicator/crt/DMA.h,sha256=_EeQ8s9ZyS3GBB3Gn0ufvXcgCFrFD7w9sR_12jf2MlI,724
|
|
304
306
|
hikyuu/include/hikyuu/indicator/crt/DOWNNDAY.h,sha256=jvhbgyQdeImKJdrUzKQ695qutJ2e9ENlxBON2Q12jPY,954
|
|
305
307
|
hikyuu/include/hikyuu/indicator/crt/DROPNA.h,sha256=fe7k1hwTJ9SXuXBkvNDzyRBERUd5P2K0TfeAUfQvfks,516
|
|
306
308
|
hikyuu/include/hikyuu/indicator/crt/EMA.h,sha256=rHnUqGMZjhkNM513SQc-dSjibRcEAe2TWFLQvgKt1rM,969
|
|
@@ -397,6 +399,7 @@ hikyuu/include/hikyuu/indicator/imp/ICval.h,sha256=JaHv8EoWgnCKr6yYZH_WIU2X0fnEd
|
|
|
397
399
|
hikyuu/include/hikyuu/indicator/imp/IDecline.h,sha256=KVUQufD79Id7SHyTzeNzTvOo-B63RO2J6T6AR2-Zg2Y,566
|
|
398
400
|
hikyuu/include/hikyuu/indicator/imp/IDevsq.h,sha256=kU3r3v9en06TsI-CxN0XKQIUS7z55_O21aLxlR7De_w,576
|
|
399
401
|
hikyuu/include/hikyuu/indicator/imp/IDiff.h,sha256=zWS2DY3wcTapTusQEdxFSN-zAo3OLFlGCYYpiODQ7cg,446
|
|
402
|
+
hikyuu/include/hikyuu/indicator/imp/IDma.h,sha256=AnRw_hS7-Z8vQDsk-jgux-QVrnZ-_AKQqUPR0PaU7jg,1187
|
|
400
403
|
hikyuu/include/hikyuu/indicator/imp/IDropna.h,sha256=6SO1lzfEdvG29L_OylD16_mlq9Ls2ybEYYoQfvaTv0c,493
|
|
401
404
|
hikyuu/include/hikyuu/indicator/imp/IEma.h,sha256=mY3i3YfTUO_KmVegmU1ImJDmAfxb91XMLjrih7Fu9jY,572
|
|
402
405
|
hikyuu/include/hikyuu/indicator/imp/IEvery.h,sha256=Usu4UuGXZIZAWNGVBbBlw0qNiwnji6mqQmF7Zerx8bA,646
|
|
@@ -785,9 +788,9 @@ hikyuu/util/notebook.py,sha256=zToRjn0gqrs11SC6CK3IvJUWcerBMID_byxSn255BWk,1159
|
|
|
785
788
|
hikyuu/util/singleton.py,sha256=ADnNpIUK63Q7iqkVv9XVptAPHg3iPlPGv1eYCPXjn34,793
|
|
786
789
|
hikyuu/util/slice.py,sha256=ZPvGFc7MO3USnAS4ADMnjJaPqTRFV0nXY_ssgfysxJ4,1759
|
|
787
790
|
hikyuu/util/timeout.py,sha256=n1KdeXfXgh6fJKdrxmmL5PU6zIkeuVp1LKMwll8okDo,3031
|
|
788
|
-
hikyuu-2.1.
|
|
789
|
-
hikyuu-2.1.
|
|
790
|
-
hikyuu-2.1.
|
|
791
|
-
hikyuu-2.1.
|
|
792
|
-
hikyuu-2.1.
|
|
793
|
-
hikyuu-2.1.
|
|
791
|
+
hikyuu-2.1.5.dist-info/LICENSE,sha256=HrhfyXIkWY2tGFK11kg7vPCqhgh5DcxleloqdhrpyMY,11558
|
|
792
|
+
hikyuu-2.1.5.dist-info/METADATA,sha256=uTMAsRkdRyH5LL-K-e0CKu0au-cxiDlK1_JjEtr3DLw,7760
|
|
793
|
+
hikyuu-2.1.5.dist-info/WHEEL,sha256=yzFeWKPhWglOD7_cH-m_zakbVHFmu77TjFYwhBGeBB0,100
|
|
794
|
+
hikyuu-2.1.5.dist-info/entry_points.txt,sha256=YSbsDH-RPGc57mPTWqwHT9VO_3aaWtXSytQbVzJX2I0,97
|
|
795
|
+
hikyuu-2.1.5.dist-info/top_level.txt,sha256=lRZUoOesNQRMIhUqwFzRZ-UnmwM6wQaMSjBRFuSbRDY,3862
|
|
796
|
+
hikyuu-2.1.5.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|