楼主: 唉人好累66
1284 2

[原创博文] 【干货分享】从零开始学量化:08空中花园策略(SkyPark) [推广有奖]

  • 0关注
  • 41粉丝

讲师

55%

还不是VIP/贵宾

-

威望
1
论坛币
1457 个
通用积分
5.0477
学术水平
11 点
热心指数
14 点
信用等级
11 点
经验
3660 点
帖子
214
精华
0
在线时间
119 小时
注册时间
2016-9-24
最后登录
2020-4-8

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
1.策略介绍及主要特点
   策略介绍:
   空中花园属于日内突破策略,是期货CTA日内策略。空中花园比较看重开盘突破。开盘时的高开或者低开均说明有大的利好或者利空使得开盘大幅远离昨天的收盘价。开盘突破,是最快的一种入场方式。当然出错的概率也最高。因此为了提高策略的胜率,空中花园策略加了额外的条件,也就是开盘要大幅高开或者低开,形成一个空窗,因此顾名思义称为空中花园,然后再根据是否突破上下轨来进行开仓判断。这样一来,策略的胜率将大大提高,不过由于对高开或者低开的幅度要求过高,一般是超过1%,因此使得策略的交易次数可能相对其它策略而言要偏低一些。开盘第一根K线是收阳还是收阴,是判断日内趋势可能运动方向的标准。在当天开盘高开或低开时更有效。
   策略主要特点:
日内交易策略,当日收盘平仓; 空中花园在当天高开或低开时使用,即当开盘价>=昨天收盘价*1.01 或开盘价<=昨天收盘价*0.99 时:
  • 上轨=第一根K线的最高价;
  • 下轨=第一根K线的最低价;
  • 当价格突破上轨,买入开仓;
  • 当价格跌穿下轨,卖出开仓;
  • 当日收盘平仓


2.策略代码
   本策略的回测平台使用的是掘金量化平台,平台详细介绍及安装说明请见文后链接。
    2.1配置文件
       配置文件中,需要按照各自信息进行配置。
       username:填写掘金平台账号;
       password:填写掘金平台账号密码;
       strategy_id:填写掘金平台上策略的strategy_id(友情提示,此处策略ID非策略名称);
       subscribe_symbols:填写订阅的信号代码;
       trade_symbol:填写交易信号代码;
      策略ID获取步骤:
      1)登陆掘金平台,创建策略,点击【模拟交易】,然后选择对应的策略。


    2)进入策略后,在策略ID后,点击复制,即将策略ID复制成功

  2.2策略代码
        配置文件【SkyPark.ini】,代码:
  1. <font size="2"><font size="3" face="宋体">[strategy]
  2. ;td_addr=localhost:8001
  3. username=
  4. password=
  5. strategy_id=
  6. ;回测模式
  7. mode=4
  8. ;订阅代码注意及时更新
  9. subscribe_symbols=CFFEX.IF1707.tick,CFFEX.IF1707.bar.60

  10. [backtest]
  11. start_time=2017-06-01 09:00:00
  12. end_time=2017-07-13 15:00:00
  13. initial_cash=10000000
  14. transaction_ratio=1
  15. commission_ratio=0
  16. slippage_ratio=0

  17. [para]
  18. trade_symbol=CFFEX.IF1707
  19. first_kline_time=09:30:00
  20. first_kline_time1=09:31:00
  21. end_time=14:55:00
  22. open_long_size=0.01
  23. open_short_size=0.01
  24. </font></font>
复制代码
           策略文件【SkyPark.py】(代码过大无法上传,具体见证经社——
                                              http://***/q/forum.php?mod=viewthread&tid=55&extra=page%3D1)
3.代码涉及的函数代码
3.1python标准函数
功能函数原型参数返回值
参数名含义
sys提供了一系列有关Python运行环境的变量和函数。
sys.argv[0]当前程序名
sys.argv获取当前正在执行的命令行参数的参数列表(list)。sys.argvsys.argv[1]第一个参数
sys.argv[2]第二个参数
arrow标准的时间日期库。
time返回当前时间的时间戳time.time()返回当前时间的时间戳
len返回对象(字符、列表、元组等)长度或项目个数。len(s)s对象返回对象长度。
append用于在列表末尾添加新的对象。list.append(obj)obj添加到列表末尾的对象。该方法无返回值,但是会修改原来的列表。
   3.2掘金接口函数
功能函数原型参数返回值
参数名类型说明
on_bar响应Bar事件,收到Bar数据后本函数被调用。on_bar(bar)barbarbar数据
open_long异步开多仓,以参数指定的symbol、价和量下单。如果价格为0,为市价单,否则为限价单。策略类和交易服务类都提供该接口open_long(exchange, sec_id, price, volume)exchangestring交易所代码, 如上交所SHSE委托下单生成的Order对象
sec_idstring证券代码,如浦发银行600000
pricefloat委托价,如果price=0,为市价单,否则为限价单
volumefloat委托量
close_long异步平多仓接口,以参数指定的exchange, 证券代码sec_id, 价和量下单。如果价格为0,为市价单,否则为限价单。策略类和交易服务类都提供该接口。close_long(exchange, sec_id, price, volume)exchangestring交易所代码, 如上交所SHSE委托下单生成的Order对象
sec_idstring证券代码,如浦发银行600000
pricefloat委托价,如果price=0,为市价单,否则为限价单
volumefloat平仓量
open_short异步开空仓,以参数指定的symbol、价和量下单。如果价格为0,为市价单,否则为限价单。策略类和交易服务类都提供该接口open_short(exchange, sec_id, price, volume)exchangestring交易所代码, 如上交所SHSE委托下单生成的Order对象
sec_idstring证券代码,如浦发银行600000
pricefloat委托价,如果price=0,为市价单,否则为限价单
volumefloat委托量
close_short异步平空仓接口,以参数指定的exchange, 证券代码sec_id, 价和量下单。如果价格为0,为市价单,否则为限价单。策略类和交易服务类都提供该接口。close_long(exchange, sec_id, price, volume)exchangestring交易所代码, 如上交所SHSE委托下单生成的Order对象
sec_idstring证券代码,如浦发银行600000
pricefloat委托价,如果price=0,为市价单,否则为限价单
volumefloat平仓量








二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Park 空中花园 从零开始 Sky 交易策略

沙发
唉人好累66 发表于 2017-7-28 16:41:08 |只看作者 |坛友微信交流群
后续还会继续上干货策略,好东西希望和大家一起分享,如果想了解更多精彩的量化方面的内容进入证经社——http://q.***了解更多吧~

使用道具

藤椅
唉人好累66 发表于 2017-7-30 13:38:52 |只看作者 |坛友微信交流群
顶顶顶~好贴莫沉

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-19 13:00