OpenOrder解决CTP API的一系列问题说明

1 如何接入CTP进行交易?

OpenOrder提供了策略框架,简单的策略只需要继承strat::Instance类,定义load(初始化策略、订阅行情),onData(处理行情数据)即可。对接CTP通道,只需要在json配置文件中添加配置项。

class Instance
{
public:
    Instance(ContextPtr context) : context_(context){};
    virtual std::string globalUniqueName() PURE;
    virtual int load(const std::string& jsonContent = "") PURE;
    virtual void onData(int32_t dataType, const char* data,
                        size_t datasiz) PURE;
    virtual void onExecStarted(const trade::TransactionPtr& transaction){};
    virtual void onExecSnapshot(const trade::TransactionPtr& transaction,
                                OROrderFieldPtr order){};
    virtual void onExecSnapshot(const trade::TransactionPtr& transaction,
                                ORTradeFieldPtr trade){};
    virtual void onExecFinished(const trade::TransactionPtr& transaction){};
    virtual or_limitprice_f
    updateOrderPrice(const trade::OrderPackInfoPtr& orderPack,
                     const trade::TransactionPtr& transaction,
                     bool clearCounter)
    {
        return orderPack->limitPrice();
    }
    virtual void onUnload(std::string& reason){};

protected:
    /// 目前统一使用该对象直接访问Context。
    ContextPtr context_;
};

使用OpenOrder,你只需要在json配置文件中添加如下内容即可在策略中使用:

        {
            "is_active": 1,
            "channel_id": 10001,
            "channel_type": "2",
            "type_info": "CTP",
            "type_name": "CTP_SE",
     
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值