掘金量化回测平台 - 1

本文介绍了掘金量化平台的Python使用,包括策略研发、回测和仿真交易。通过DEMO源码分析,展示了如何导入SDK、编写策略以及配置运行。文章还提及了平台相比其他云平台的优点,如本地化策略开发,支持更复杂的回测功能。
摘要由CSDN通过智能技术生成

掘金量化平台初探 python

量化分析包括:策略研发、策略回测、仿真交易、实盘交易、实盘盘后优化。


主要想使用掘金的平台来做策略回测仿真交易两个环节的功能。
对比了下主流的云平台JoinQuant、Uquant、Ricequant缺点是不落地,所有策略在云平台上跑,编程体验也不如本地平台。pyalgotrade等开源本地平台原本都是基于美股的,即使改成A股回测也只能做一些粗糙的的策略回测,没办法把策略做细致,比如股价的前后复权,期货对冲和止盈止损。最终选择尝试一下掘金的免费版个人的平台进行回测。

DEMO源码分析

1 - 导入SDK

自己写的策略类应继承自StrategyBase基类,
并以方法重写的方式满足策略开发需求。

# !/usr/bin/env python
# -*- coding: utf-8 -*-
from gmsdk.api import StrategyBase
from gmsdk import to_dict

2 - 编写策略

MyStrategy继承StrategyBase类,on_bar或on_tick是必须重写的类函数。

class MyStrategy(StrategyBase):
    def __init__(self, *args, **kwargs):
        super(MyStrategy, self).__init__(*args, **kwargs)
        self.oc = True

    def on_bar(self, bar):
        if self.oc:
            # 开多仓 买入1000股 sec_id
            self.open_long(bar.exchange, bar.sec_id, 0, 1000)
        else:
            # 平多仓 卖出 1000股 sec_id
            self.close_long(bar.exchange, bar.sec_id, 0, 1000)
        self.oc = not self.oc

    # 回测结束事件,在回测结束时触发
    def on_backtest_finish(self, indicator): #indicator为回测的绩效
        print('backtest finished', to_dict(indicator))

3 - 配置和运行策略

if __name__ == '__main__':
    # 初始化策略配置
    mystrategy = MyStr
  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值