Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
zengbin93
czsc
提交
6b1b1b6b
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,发现更多精彩内容 >>
提交
6b1b1b6b
编写于
7月 14, 2020
作者:
Z
zengbin93
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
0.5.1: 初版开发完成
上级
d01e88f9
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
54 addition
and
2 deletion
+54
-2
czsc/analyze_v2.py
czsc/analyze_v2.py
+39
-2
test/test_analyze_v2.py
test/test_analyze_v2.py
+15
-0
未找到文件。
czsc/
objs
.py
→
czsc/
analyze_v2
.py
浏览文件 @
6b1b1b6b
...
...
@@ -126,7 +126,7 @@ class BI:
fx_inside
=
[
x
for
x
in
self
.
elements
if
x
.
dt
>=
self
.
dt
]
bars_inside
=
[
y
for
x
in
fx_inside
for
y
in
x
.
elements
]
num_k
=
len
(
set
([
x
[
'dt'
]
for
x
in
bars_inside
]))
-
len
(
mid_fx
.
elements
)
+
3
if
num_k
>=
7
:
if
num_k
>=
6
:
self
.
is_end
=
True
def
__repr__
(
self
):
...
...
@@ -253,8 +253,43 @@ class XD:
class
ZS
:
"""中枢"""
def
__init__
(
self
):
# 组成中枢的元件:笔标记、线段标记、走势标记
self
.
elements
=
[]
self
.
ZD
=
0
self
.
ZG
=
0
self
.
D
=
None
self
.
G
=
None
self
.
DD
=
None
self
.
GG
=
None
self
.
third_buy
=
None
self
.
third_sell
=
None
self
.
is_end
=
False
def
__repr__
(
self
):
pass
return
f
"<ZS(
{
self
.
ZD
}
~
{
self
.
ZG
}
)>"
def
update
(
self
,
mark
):
self
.
elements
.
append
(
mark
)
if
len
(
self
.
elements
)
<
4
:
return
if
not
self
.
ZD
and
not
self
.
ZG
:
zd
=
max
([
x
.
price
for
x
in
self
.
elements
[
-
4
:]
if
x
.
mark
==
"d"
])
zg
=
min
([
x
.
price
for
x
in
self
.
elements
[
-
4
:]
if
x
.
mark
==
"g"
])
if
zg
>
zd
:
self
.
ZD
=
zd
self
.
ZG
=
zg
else
:
return
else
:
if
mark
.
mark
==
'g'
and
mark
.
price
<
self
.
ZD
:
self
.
third_sell
=
mark
self
.
is_end
=
True
if
mark
.
mark
==
'd'
and
mark
.
price
>
self
.
ZG
:
self
.
third_buy
=
mark
self
.
is_end
=
True
class
PZ
:
...
...
@@ -335,6 +370,8 @@ class KlineAnalyze(object):
def
update
(
self
,
bar
,
save
=
True
):
"""每次输入一根K线进行分析"""
if
save
:
if
bar
[
'dt'
]
==
self
.
kline
[
-
1
][
'dt'
]:
self
.
kline
.
pop
(
-
1
)
self
.
kline
.
append
(
bar
)
if
not
self
.
fxs
:
...
...
test/test_analyze_v2.py
0 → 100644
浏览文件 @
6b1b1b6b
# coding: utf-8
import
sys
import
warnings
from
cobra.data.kline
import
get_kline
sys
.
path
.
insert
(
0
,
'.'
)
sys
.
path
.
insert
(
0
,
'..'
)
import
czsc
from
czsc.analyze_v2
import
KlineAnalyze
warnings
.
warn
(
f
"czsc version is
{
czsc
.
__version__
}
"
)
df
=
get_kline
(
ts_code
=
"000001.SH"
,
end_dt
=
"2020-04-28 15:00:00"
,
freq
=
'D'
,
asset
=
'I'
)
ka
=
KlineAnalyze
(
df
,
name
=
"日线"
)
print
(
ka
)
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录