zoukankan      html  css  js  c++  java
  • tbquant除权换月的做法

    //=========除权换月相关设置==============
    AddDataFlag(Enum_Data_RolloverBackWard());    //设置后复权
        //复权有前复权和后复权两种方式。前复权会导致历史价格不断地变化,所以会引起交易信号的前后不一致。所以我们采用后复权的方式。
    AddDataFlag(Enum_Data_RolloverRealPrice());    //设置映射真实价格
        //除权后数据源已经变为连续的后复权的数据了,但是实际交易的发单还是要以真实合约的价格来作为委托价格,所以就需要一个转换。这个转换用映射真实价格的函数来实现。
    AddDataFlag(Enum_Data_AutoSwapPosition());    //设置自动换仓
        //在除权换月的时候,老的仓位要平掉新的仓位要建立。这样的一笔换仓操作用户不需要自己写代码处理,只需要调用自动换仓函数即可自动处理。
    AddDataFlag(Enum_Data_IgnoreSwapSignalCalc());    //设置忽略换仓信号计算
    //而对于测试报告来说,除权换月的这笔换仓操作并不是因为交易规则而触发的新的交易,而是因为除权换月而不得不做的换仓操作。所以除权换月前后的两笔分开的交易,应该放在一起统计会更合理。
    //所以在测试报告的层面,将这两笔交易合二为一。这个就使用忽略换仓信号计算的函数来实现。

    代码放入 OnInit() 函数中

    OnInit()
    {
        //=========除权换月相关设置==============
        AddDataFlag(Enum_Data_RolloverBackWard());    //设置后复权
        AddDataFlag(Enum_Data_RolloverRealPrice());    //设置映射真实价格
        AddDataFlag(Enum_Data_AutoSwapPosition());    //设置自动换仓
        AddDataFlag(Enum_Data_IgnoreSwapSignalCalc());    //设置忽略换仓信号计算
        //=========交易相关设置==============
        SetInitCapital(1000000);    //设置初始资金为100万        
        SetCommissionRate(BitOr(Enum_Rate_FreeOfExitToday,Enum_Rate_ByFillAmount),5);    //设置手续费率为成交金额的5%%,不收平今, BitOr进行位或运算即设置属性和    
        SetSlippage(Enum_Rate_PointPerHand,2);    //设置滑点为2跳/手
    }  
  • 相关阅读:
    css如何去掉select原始样式
    Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL
    eclispe+maven+ssm+sql_server/mysql配置
    解决Missing artifact com.microsoft.sqlserver:sqljdbc4:jar:4.0问题
    eclipse alt+/智能提示错误问题
    去除input边框 input去除边框 去除input获取焦点时的蓝色外边框
    java对sql server的增删改查
    java连接sql server 2008
    卸载sql server 2008
    FTP的vsftpd.conf含义
  • 原文地址:https://www.cnblogs.com/alantop/p/15362859.html
Copyright © 2011-2022 走看看