QMT量化交易模型自动买入国债逆回购源代码

我把国债逆回购添加到了框架,原理是卖出对应的国债,提供qmt获取实时数据,进行下单,我们可以控制买入比率,同花顺,东方财富,通达信的可以获取国债代码,同花顺可以设置自动购买

我们默认买一天的资金快速使用,周末也要收益,框架了吗的购买源代码

QMT量化交易模型自动买入国债逆回购源代码

def reverse_repurchase_of_treasury_bonds(self,security='131810.SZ',buy_ratio=0.00001, order_type=xtconstant.STOCK_SELL                                             ,price_type=xtconstant.FIX_PRICE,strategy_name='',order_remark=''):        '''        国债逆回购        '''        # 对交易回调进行订阅,订阅后可以收到交易主推,返回0表示订阅成功        account=self.balance()        av_cash=account['可用金额'].tolist()[-1]        av_cash=float(av_cash)        av_cash=av_cash*buy_ratio        spot_data=self.data.get_full_tick(code_list=[security])        price=spot_data[security]['lastPrice']        price=float(price)        amount=math.floor((av_cash/price)/10)*10        subscribe_result = self.xt_trader.subscribe(self.acc)        print(self.xt_trader.query_stock_asset_async(account=self.acc,callback=subscribe_result))        #print(subscribe_result)        stock_code =self.adjust_stock(stock=security)        #price=self.select_slippage(stock=security,price=price,trader_type='sell')        order_volume=amount        # 使用指定价下单,接口返回订单编号,后续可以用于撤单操作以及查询委托状态        if order_volume>0:            fix_result_order_id = self.xt_trader.order_stock(account=self.acc,stock_code=stock_code, order_type=order_type,                                                                order_volume=order_volume, price_type=price_type,                                                                price=price, strategy_name=strategy_name, order_remark=order_remark)            text='国债逆回购交易类型{} 代码{} 价格{} 数量{} 订单编号{}'.format(order_type,stock_code,price,order_volume,fix_result_order_id)            return '交易成功',text        else:            text='国债逆回购卖出 标的{} 价格{} 委托数量{}小于0有问题'.format(stock_code,price,order_volume)            return '交易失败',text

原理是计算可用资金,获取委托价格,计算最大可用买入数量,自己可用设置买入比例,恶魔简单的调用框架测试代码

QMT量化交易模型自动买入国债逆回购源代码

from xgtrader.unification_data_ths import unification_data_thsfrom qmt_trader.unification_data_qmt import unification_data_qmtfrom xgtrader.stock_data_ths import stock_data_thsfrom qmt_trader.stock_data_qmt import stock_data_qmtfrom xgtrader.etf_fund_data_ths import etf_fund_data_thsfrom qmt_trader.etf_fund_data_qmt import etf_fund_data_qmtfrom qmt_trader.bond_cov_data_qmt import bond_cov_data_qmtfrom xgtrader.bond_cov_data_ths import bond_cov_data_thsfrom xgtrader.tdx_data import tdx_datafrom trader_models.bond_cov_rend_strategy.bond_cov_rend_strategy import  bond_cov_rend_strategyfrom trader_tool.unification_data import unification_datafrom trader_models.bond_cov_rend_strategy.bond_cov_rend_strategy import bond_cov_rend_strategyfrom trader_models.etf_trend_strategy.etf_trend_strategy import etf_trend_strategyfrom xgtrader.xgtrader import xgtraderfrom trader_tool.tdx_data import tdx_datafrom trader_tool.analysis_models import analysis_modelsfrom trader_tool.unification_data import unification_dataimport  statsmodels.api as smfrom trader_models.micro_stock_cap_trend_trading.micro_stock_cap_trend_trading import micro_stock_cap_trend_tradingfrom trader_tool.unification_data import unification_datafrom trader_tool.ths_rq import ths_rqfrom trader_models.micro_stock_cap_trend_trading.micro_stock_cap_trend_trading import micro_stock_cap_trend_tradingfrom qmt_trader.qmt_trader_ths import qmt_trader_thsfrom qmt_trader.qmt_data import qmt_data#导入交易框架from qmt_trader.qmt_trader_ths import qmt_trader_thsmodels=qmt_trader_ths()#连接qmtmodels.connect()#获取iop数据df=models.reverse_repurchase_of_treasury_bonds(security='131810.SZ',buy_ratio=0.00001,)print(df)

下单结果

QMT量化交易模型自动买入国债逆回购源代码

qmt交易的结果周末委托不了

QMT量化交易模型自动买入国债逆回购源代码

搭载实盘交易模型里面的函数

"自动申购新股可转债时间":"14:20",
    "是否自动回购国债":"是",
    "国债代码":["131810.SZ"],
    "国债购买比率":0.8,
    "国债购买时间":"14:57",

实盘运行的函数

def get_reverse_repurchase_of_treasury_bonds(self):
        '''
        国债回购
        '''
        with open('分析配置.json','r+',encoding='utf-8') as f:
            com=f.read()
        text=json.loads(com)
        if self.check_is_trader_date_1()==True:
            security=text['国债代码'],
            buy_ratio=text['国债购买比率']
            if self.trader_tool=='qmt':
                stats,text1=self.trader.reverse_repurchase_of_treasury_bonds(security=security,buy_ratio=buy_ratio)
            else:
                stats=''
                text1=''
                print('同花顺目前没有支持国债回购')
            if stats=='交易成功':
                self.data.seed_emial_qq(text=text1)
            else:
                text1='国债回购失败'
                self.data.seed_emial_qq(text=text1)
        else:
            print('目前不是交易时间',datetime.now())

实盘交易的效果

QMT量化交易模型自动买入国债逆回购源代码

显示开启的模块

QMT量化交易模型自动买入国债逆回购源代码

发布者:股市刺客,转载请注明出处:https://www.95sca.cn/archives/68817
站内所有文章皆来自网络转载或读者投稿,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。敬请谅解!

(0)
股市刺客的头像股市刺客
上一篇 2024 年 7 月 9 日
下一篇 2024 年 7 月 9 日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注