Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
zengbin93
czsc
提交
f449849b
C
czsc
项目概览
zengbin93
/
czsc
通知
23
Star
2
Fork
1
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
4
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
C
czsc
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
4
Issue
4
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
f449849b
编写于
4月 30, 2020
作者:
Z
zengbin93
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
0.3.1 修复
上级
a2de4786
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
19 addition
and
25 deletion
+19
-25
examples/jq_monitor.py
examples/jq_monitor.py
+8
-11
examples/trade_simulator.py
examples/trade_simulator.py
+11
-14
未找到文件。
examples/jq_monitor.py
浏览文件 @
f449849b
# coding: utf-8
import
os
import
json
import
traceback
import
requests
import
time
import
pandas
as
pd
...
...
@@ -132,17 +133,13 @@ def monitor(symbol='000001.XSHG'):
sa
=
SolidAnalyze
(
klines
)
for
freq
in
[
'1分钟'
,
'5分钟'
,
'30分钟'
]:
print
(
f
"
{
latest_dt
}
: monitor
{
symbol
}
at
{
freq
}
"
)
for
func
in
[
sa
.
is_first_buy
,
sa
.
is_first_sell
,
sa
.
is_second_buy
,
sa
.
is_second_sell
,
sa
.
is_third_buy
,
sa
.
is_third_sell
,
sa
.
is_xd_buy
,
sa
.
is_xd_buy
]:
b1
,
event
=
func
(
freq
,
tolerance
=
0.1
)
if
b1
:
event
[
'级别'
]
=
freq
event
[
'最新价格'
]
=
sa
.
kas
[
'1分钟'
].
latest_price
__send_event
(
event
)
for
name
in
sa
.
bs_func
.
keys
():
try
:
event
=
sa
.
check_bs
(
freq
=
freq
,
name
=
name
,
pf
=
False
,
tolerance
=
0.1
)
if
event
[
'操作提示'
]
==
name
:
__send_event
(
event
)
except
:
traceback
.
print_exc
()
t
=
latest_dt
.
split
(
' '
)[
1
]
if
"13:00"
>
t
>
"11:30"
or
t
>
"15:00"
:
...
...
examples/trade_simulator.py
浏览文件 @
f449849b
...
...
@@ -212,7 +212,7 @@ def kline_simulator(ts_code, trade_dt, asset="E", count=5000):
new_klines
=
dict
()
for
freq
in
init_klines
.
keys
():
new_klines
[
freq
]
=
pd
.
concat
([
init_klines
[
freq
],
klines
[
freq
]]).
tail
(
count
)
print
(
freq
,
new_klines
[
freq
].
tail
(
2
),
'
\n
'
)
#
print(freq, new_klines[freq].tail(2), '\n')
yield
new_klines
...
...
@@ -250,19 +250,16 @@ def trade_simulator(ts_code, end_date, file_bs, start_date=None, days=3, asset="
for
i
,
klines
in
enumerate
(
ks
.
__iter__
(),
1
):
if
i
%
watch_interval
!=
0
:
continue
sa
=
SolidAnalyze
(
klines
)
for
func
in
[
sa
.
is_first_buy
,
sa
.
is_second_buy
,
sa
.
is_third_buy
,
sa
.
is_xd_buy
,
sa
.
is_first_sell
,
sa
.
is_second_sell
,
sa
.
is_third_sell
,
sa
.
is_xd_sell
]:
for
freq
in
[
'1分钟'
,
'5分钟'
,
'30分钟'
]:
latest_dt
=
klines
[
freq
].
iloc
[
-
1
][
'dt'
]
latest_price
=
klines
[
freq
].
iloc
[
-
1
][
'close'
]
for
freq
in
[
'1分钟'
,
'5分钟'
,
'30分钟'
]:
for
name
in
sa
.
bs_func
.
keys
():
try
:
b
,
detail
=
func
(
freq
,
tolerance
=
0.1
)
if
b
:
detail
[
'交易时间'
]
=
latest_dt
detail
[
'交易价格'
]
=
latest_price
detail
[
'交易级别'
]
=
freq
detail
=
sa
.
check_bs
(
freq
=
freq
,
name
=
name
,
pf
=
False
,
tolerance
=
0.1
)
if
detail
[
'操作提示'
]
==
name
:
print
(
detail
)
detail
[
'交易时间'
]
=
detail
[
'最新时间'
]
detail
[
'交易价格'
]
=
detail
[
'最新价格'
]
results
.
append
(
detail
)
except
:
traceback
.
print_exc
()
...
...
@@ -291,15 +288,15 @@ def check_trade(ts_code, file_bs, freq, end_date="20200314", asset="E", file_htm
if
__name__
==
'__main__'
:
ts_code
=
'300
671
.SZ'
ts_code
=
'300
033
.SZ'
asset
=
"E"
end_date
=
'20200321'
freq
=
'
1
min'
freq
=
'
30
min'
file_bs
=
"%s买卖点变化过程_%s.xlsx"
%
(
ts_code
,
end_date
)
file_html
=
f
"%s_%s_%s_bs.html"
%
(
ts_code
,
freq
,
end_date
)
# step 1. 仿真交易
trade_simulator
(
ts_code
,
end_date
=
end_date
,
file_bs
=
file_bs
,
days
=
15
0
,
asset
=
asset
,
watch_interval
=
5
)
# trade_simulator(ts_code, end_date=end_date, file_bs=file_bs, days=10
0, asset=asset, watch_interval=5)
# step 2. 查看仿真交易过程的买卖点提示
check_trade
(
ts_code
,
file_bs
,
freq
=
freq
,
asset
=
asset
,
end_date
=
end_date
,
file_html
=
file_html
)
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录