Skip to content

Commit

Permalink
Merge pull request #220 from fasiondog/feature/factor
Browse files Browse the repository at this point in the history
改进 CLOSE/OPEN.. python 中公式可以不加括号;HikyuuTDX 加入新版本提示
  • Loading branch information
fasiondog committed Apr 2, 2024
2 parents d8cd94a + 7faf074 commit a77d9b8
Show file tree
Hide file tree
Showing 4 changed files with 32 additions and 14 deletions.
6 changes: 6 additions & 0 deletions hikyuu/gui/HikyuuTDX.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
from hikyuu.gui.data.SchedImportThread import SchedImportThread
from hikyuu.gui.spot_server import release_nng_senders

from hikyuu import can_upgrade, get_last_version
from hikyuu.data import hku_config_template
from hikyuu.util import *

Expand Down Expand Up @@ -624,6 +625,11 @@ def on_message_from_thread(self, msg):
self.escape_time_thread = None
self.start_import_pushButton.setEnabled(True)
self.import_detail_textEdit.append("导入完毕!")
if can_upgrade():
self.import_detail_textEdit.append("========================================================")
self.import_detail_textEdit.append(
"新版本 ({}) 已发布,建议更新".format(get_last_version()))
self.import_detail_textEdit.append("========================================================")
self.import_running = False
elif msg_task_name == 'IMPORT_KDATA':
Expand Down
10 changes: 10 additions & 0 deletions hikyuu/indicator/indicator.py
Original file line number Diff line number Diff line change
Expand Up @@ -133,3 +133,13 @@ def concat_to_df(dates, ind_list, head_stock_code=True, head_ind_name=False):
df = pd.concat([df, x.to_df()], axis=1)
df.set_index('date')
return df
# 避免 python 中公式原型必须加括号
KDATA = C_KDATA()
CLOSE = C_CLOSE()
OPEN = C_OPEN()
HIGH = C_HIGH()
LOW = C_LOW()
AMO = C_AMO()
VOL = C_VOL()
28 changes: 14 additions & 14 deletions hikyuu_pywrap/indicator/_build_in.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -492,56 +492,56 @@ Indicator (*ZSCORE_1)(bool, double, bool) = ZSCORE;
Indicator (*ZSCORE_2)(const Indicator&, bool, double, bool) = ZSCORE;

void export_Indicator_build_in(py::module& m) {
m.def("KDATA", KDATA1);
m.def("KDATA", KDATA3, R"(KDATA([data])
m.def("C_KDATA", KDATA1);
m.def("C_KDATA", KDATA3, R"(KDATA([data])
包装KData成Indicator,用于其他指标计算
:param data: KData 或 具有6个返回结果的Indicator(如KDATA生成的Indicator)
:rtype: Indicator)");

m.def("CLOSE", CLOSE1);
m.def("CLOSE", CLOSE3, R"(CLOSE([data])
m.def("C_CLOSE", CLOSE1);
m.def("C_CLOSE", CLOSE3, R"(CLOSE([data])
获取收盘价,包装KData的收盘价成Indicator
:param data: 输入数据(KData 或 Indicator)
:rtype: Indicator)");

m.def("OPEN", OPEN1);
m.def("OPEN", OPEN3, R"(OPEN([data])
m.def("C_OPEN", OPEN1);
m.def("C_OPEN", OPEN3, R"(OPEN([data])
获取开盘价,包装KData的开盘价成Indicator
:param data: 输入数据(KData 或 Indicator)
:rtype: Indicator)");

m.def("HIGH", HIGH1);
m.def("HIGH", HIGH3, R"(HIGH([data])
m.def("C_HIGH", HIGH1);
m.def("C_HIGH", HIGH3, R"(HIGH([data])
获取最高价,包装KData的最高价成Indicator
:param data: 输入数据(KData 或 Indicator)
:rtype: Indicator)");

m.def("LOW", LOW1);
m.def("LOW", LOW3, R"(LOW([data])
m.def("C_LOW", LOW1);
m.def("C_LOW", LOW3, R"(LOW([data])
获取最低价,包装KData的最低价成Indicator
:param data: 输入数据(KData 或 Indicator)
:rtype: Indicator)");

m.def("AMO", AMO1);
m.def("AMO", AMO3, R"(AMO([data])
m.def("C_AMO", AMO1);
m.def("C_AMO", AMO3, R"(AMO([data])
获取成交金额,包装KData的成交金额成Indicator
:param data: 输入数据(KData 或 Indicator)
:rtype: Indicator)");

m.def("VOL", VOL1);
m.def("VOL", VOL3, R"(VOL([data])
m.def("C_VOL", VOL1);
m.def("C_VOL", VOL3, R"(VOL([data])
获取成交量,包装KData的成交量成Indicator
Expand Down
2 changes: 2 additions & 0 deletions hikyuu_pywrap/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -121,6 +121,8 @@ PYBIND11_MODULE(core, m) {

m.def("get_version_with_build", getVersionWithBuild);
m.def("get_version_git", getVersionWithGit);
m.def("get_last_version", getLatestVersion);
m.def("can_upgrade", CanUpgrade);

m.def("get_stock", getStock,
R"(get_stock(market_code)
Expand Down

0 comments on commit a77d9b8

Please sign in to comment.