以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  高级功能研发区  (http://weistock.com/bbs/list.asp?boardid=5)
----  请问一下具体的错误日志 在什么地方能够找到?  (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=169295)

--  作者:qq代人发帖
--  发布时间:2019/4/11 16:30:27
--  请问一下具体的错误日志 在什么地方能够找到?
请问一下  回测里面,有关交易函数里面有关开仓平仓命令失败返回 -1,具体的错误日志 在什么地方能够找到?
下单失败,order_status 函数里面也没有响应

--  作者:yukizzc
--  发布时间:2019/4/11 16:47:26
--  
交易-下单设置-记录下单日志
通过这部看具体错误的是社么

--  作者:webzhang
--  发布时间:2019/4/11 16:58:08
--  
我看一下,日志里面是  实盘交易或 模拟交易的记录,但是 没有 回测里面的交易日志。
---我主要的问题,python 策略,回测中间,有时 开仓命令 不生效,返回-1值,不是资金问题,但是 找不到 错误所在。 

--  作者:马良
--  发布时间:2019/4/11 22:43:16
--  
看一下回测报告的委托记录呢
--  作者:webzhang
--  发布时间:2019/4/12 9:50:57
--  
本程序目的:用于股指期货交易,为避免 平今的大额手续费,开仓:采用先平昨天相反头寸,剩下开仓今天头寸; 平仓:先平昨天头寸,剩下则开相反方向头寸;
回测 2019年4月4日14点20分: 
     1)满足S1空头开仓条件,但因为有昨多头,采用直接平仓昨天多头,代替开空头的方法。  
     2) 具体的下单指令 sid=buy_close(order_book_id=code,style="Market", volume = s_v) ,平多1手,s_v 设定为1
     3)但是 回测委托交易记录中,结果是是平空, 出错,
     4)附件 开仓代码,回测委托明细,程序输出

图片点击可在新窗口打开查看此主题相关图片如下:开仓代码.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:回测委托明细.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:程序输出.png
图片点击可在新窗口打开查看

--  作者:webzhang
--  发布时间:2019/4/12 9:53:22
--  
 ############################################################################################################   
    portfolio=get_portfolio (context.s1, 0)
    buy_today_quantity=portfolio.buy_today_quantity #今多仓
    buy_quantity=portfolio.buy_quantity #多头总持仓
    buy_old_qty=buy_quantity-buy_today_quantity #昨多头数量
    sell_today_quantity=portfolio.sell_today_quantity #今空仓
    sell_quantity=portfolio.sell_quantity#空头总持仓
    sell_old_qty=sell_quantity-sell_today_quantity #昨空头数量                   
    ############################################################################################################                  
    if s1:    #开空
        print((now,\'s1 多总,昨多,空总,昨空\',buy_quantity,buy_old_qty,sell_quantity,sell_old_qty,c))
        context.st=0 #空头开仓时间0
        context.last=-1 #方向空头
        if buy_old_qty<=0: #没有昨天多头仓位
            sid=sell_open(order_book_id=code, style="Market", volume = s_v)    #  市价开空全部数量
            print((\'没有昨天多头仓,直接开空\',sid))
        else:
            if  s_v<=buy_old_qty: #小于昨天多头数量,直接平仓昨天多头
                sid=buy_close(order_book_id=code,style="Market", volume = s_v)
                print((\'小于昨天多头数量,直接平仓昨天多头\',sid))
            else: #大于 昨天多头数量
                sid1=buy_close(order_book_id=code,style="Market", volume = s_v) #平仓昨天多头
                sid2=sell_open(order_book_id=code, style="Market", volume = (s_v-buy_old_qty)) #开仓剩余空头    
                print((\'大于昨天多头数量,先平仓昨天多头,后开仓多头\',sid1,sid2))        
            
    

--  作者:webzhang
--  发布时间:2019/4/12 10:03:15
--  
-----------发现错误了

buy_close 平空 

sell-close 平多