forked from Raytone-D/puppet
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathPuppet使用说明书.txt
114 lines (82 loc) · 6.04 KB
/
Puppet使用说明书.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
界面操控API
*********************************************************************************************************************************
* method:'买入': buy(), '卖出': sell(), '撤单': cancel(), '打新': raffle(), '下单': order(),'撤买': cancel_buy(), '撤卖': cancel_sell()
'全撤': cancel_all()
* property: '可用余额': balance, '持仓': position, '成交': deals, '可撤委托': cancelable, '新股': new, '中签': bingo, '帐号': account
'市值': market_value
*********************************************************************************************************************************
"""
# 扯线木偶操控API使用说明
# api会保持稳定,只会“增减参数”来优化。
# 实例方法必须有参数,否则跳出异常或输出属性的返回值。
# 属性没参数,直接trader.xxx
"""
def buy(self, symbol, price=0, qty=0):
pass
def sell(self, symbol, price=0, qty=0):
"""
# 功能:实现了和交易端相同的买/卖委托。
# self: 类的实例方法。
# symbol: 代码,字符串类型,非0开头的可以直接用整数。
# price: 价格, 字符串或整数。
# qty: 数量,字符串类型或整数。
# 限价委托:trader.buy('002236', 16.55, 100) # 最常用的下单方式。
# 扫五档委托:trader.buy('002236', 100) # 注:v4未实现
# 全仓扫五档:trader.buy('002236') # 注:v4未实现。
"""
pass
def cancel(self, symbol=None, way='撤买'):
"""
# 功能:只实现了交易端的“查代码”撤单功能。可全撤或者单独撤买或撤卖
# symbol: 股票代码
# way: 值可以是"撤买"、"撤卖"、"全撤"、"撤单",其中一个。
# trader.cancel('002236'), trader.cancel('600006', '撤卖')
"""
pass
def raffle(self, skip=None, way=True):
"""
# 功能:实现了交易端的“新股申购”功能。
# skip: 字符串,值可以是'7'(沪市)、'0'(深市主板)、'3'(创业板)其中之一。表示直接跳过申购。
# way: 布尔值,True表示申购,否则查新股名单。
# trader.raffle(skip='3')
"""
pass
构建流程:界面操控API ->> 预警交互API ->> 信号推送API ->> 策略中枢API ->> 历史数据API ->> 回测模块API
使用流程:手动登录客户端 --> 运行扯线木偶 --> 自动搜索已登录的客户端 --> 交易前的预备 --> 自动获取持仓数据 --> 查询预警名单 --> 客户端待命状态
# 普通使用只需要运行puppet_v4.py文件,即可。
目前已知查询中签bingo只适用于部分券商!请留意。
招商证券只测试过最新版能独立交易模式登录使用!辣鸡定制版不会增加任何支持了。国金、中信通达信据反馈资金明细不兼容。
暂不支持融资融券!
同花顺交易端:无任何限制!官方统一版或老版、券商定制版(银河、国泰君安、华泰、广发等)。
通达信交易端:无任何限制!目前不支持独立交易端。
多账户同时交易:完全支持!同一券商或多个券商。
注意:暂不支持一个交易端通过“添加”同一券商多个账户同时交易,只能交易当前的那一个账户。
# 使用最新版本的扯线木偶,以避免一些运行逻辑的BUG。
# 使用最新版本的Anaconda3,或者Python 3.5+。界面操作API能支持Python3.0+,
# 因为后面的其他模块会使用asyncio(3.4)或者await/async(3.5+),因此不建议使用。
# 按MSDN的API说明,WIN2000及以上版本都能正常使用,但注意了, windows xpsp3只能Python3.4以下,Python3.5+必须WIN7+。
# 默认只实例化一个客户端(同花顺或者通达信),有多个客户端需求的,请参考multi_clients_test.py。
# 00开头的股票需要用字符串。
使用流程:手动登录客户端 --> 运行扯线木偶 --> 自动搜索已登录的客户端 --> 交易前的预备 --> 自动获取持仓数据 --> 查询预警名单 --> 客户端待命状态
可用性测试:直接运行主文件puppet_v4.py,或者引用该文件。免验证码自动登录模式仅适用于打新,无法交易。
* https://github.com/hardywu/ 写了个rqalpha的接入模板PR,感谢支持鼓励!
推荐使用最新版的Anaconda3,或者Python 3.5+。系统要求:Windows平台,Win2000+;Linux平台,安装最新的WineHQ,环境设为WIN7。
Windows下不需要安装、配置。
Linux下需要安装最新版本的Wine,环境设为Windows 7,先安装同花顺交易客户端,能正常使用之后再安装Python for Windows。启动wineconsole,pip install pyperclip,之后就可以正常使用了。
""" 使用说明 """
# test.py是测试单账户的可用性。
# multi_test.py是测试多个账户的可用性。
# multi_raffle.py是多账户打新专用脚本,双击即可完成打新。
""" 同花顺独立交易客户端 """
# 由于同花顺理念的先进性,任何版本的同花顺都能正常被Puppet所调用。
# 同花顺是全后台调用的,只要登录后最小化即可,无需使用专用的主机或者桌面。
""" 通达信金融终端 """
# 暂不支持通达信独立交易端。
# 暂不支持招商【行情+交易】模式登录的客户端。
# 由于通达信交易客户端使用前置交易模式,请使用专用的虚拟桌面(比如Win10的虚拟桌面),以免干扰操作。
# 通达信金融终端(包括各种券商定制版)的交易窗口不能被遮挡,不能最小化,会导致程序抛出异常。
# 可能有些券商的独有的登录模式无法正常匹配,请发电邮或者在github通知我。
# 节点的二次索引将各个券商杂乱的节点布局影射为委托0,撤单1,资金股份2,当日成交3,新股申购4,中签查询5,批量申购6。
# 如果交易端左侧的功能节点标签没配置在config.py的TAG/SUBTAG里面,请自行增加到对应的索引位置。
# 广发证券查询中签,如果返回[],需要改动源码wait_a_second(0.5)。
# 撤单可选股票代码symbol或者委托编号number。买卖方向默认“卖出”。