金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 2253|回复: 12

请老师帮忙看看这段代码哪里有问题

[复制链接]

54

主题

130

帖子

130

积分

等级: 免费版

注册:
2021-7-10
曾用名:
发表于 2023-5-22 15:24 | 显示全部楼层 |阅读模式
def handle_bar(context):
mc="("+get_dynainf (context.s1, 219)+")"
if   DTIME[-2]  == 1:    #DTIME为当前周期,N为大周期
            zq0='1分钟'          #zq0传递参数于买入卖出显示时间周期                  
            zq1='1分钟'          #zq1传递参数于趋势判断显示时间周期         #zq传递参数于get_indicator函数
    elif DTIME[-2]  == 2:              
            zq0='5分钟'
            zq1='5分钟'
    elif DTIME[-2]  == 3:
            zq0='15分钟'            
            zq1='15分钟'                                 


def after_trading(context):
      txtzd1011=mc+context.s1+'-'+zq1+',收盘情况'  #txtzd1011=mc+context.s1+'-'+zq1+',收盘情况'
         txtzd2011= '目前持仓,{多单持仓:'+"{:.0f}".format(context.bzc)+',bzs1:'+"{:.0f}".format(float(context.bzs1))+',bzs2:'+"{:.0f}".format(float(context.bzs2))+'}---{空单持仓:'+"{:.0f}".format(context.szc)+',                      szs1:'+"                           {:.0f}".format(float(context.szs1))+',szs2:'+"{:.0f}".format(float(context.szs2))+"}"
         mail(txtzd1011,txtzd2011,strTo0)

上面这段代码中 txtzd1011=mc+context.s1+'-'+zq1+',收盘情况'  这段代码  中mc和zq1有问题,context.s1和',收盘情况' 这两个没有问题。当添加上mc和zq1两个参数后  运行池处策略会显示红色逐行逐个参数测试为这两个参数造成的,具体是什么原因。请老师帮忙看看。谢谢



回复

使用道具 举报

34

主题

9255

帖子

5万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2023-5-22 15:28 | 显示全部楼层
没看懂你的描述,请把报错信息截图看一下。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

54

主题

130

帖子

130

积分

等级: 免费版

注册:
2021-7-10
曾用名:
 楼主| 发表于 2023-5-22 15:37 | 显示全部楼层
技术006 发表于 2023-5-22 15:28
没看懂你的描述,请把报错信息截图看一下。

只要添加那两个参数就会显示成上面的样子
捕获.PNG
回复

使用道具 举报

34

主题

9255

帖子

5万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2023-5-22 15:59 | 显示全部楼层
没有报错提示窗口弹出吗?本地用上述代码测试没有图中的现象。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

54

主题

130

帖子

130

积分

等级: 免费版

注册:
2021-7-10
曾用名:
 楼主| 发表于 2023-5-22 16:11 | 显示全部楼层
没有提示窗口。 这段代码是盘后 3:05执行一次。可能现在不能执行吧。
回复

使用道具 举报

54

主题

130

帖子

130

积分

等级: 免费版

注册:
2021-7-10
曾用名:
 楼主| 发表于 2023-5-22 16:14 | 显示全部楼层
txtzd1011=mc+context.s1+'-'+zq1+',收盘情况'     这4个参数   我逐个添加测试,只要context.s1和+',收盘情况'  这两个能正常运行。mc+和+zq1这两个会错误,但是具体什么原因错误我搞不清楚。
回复

使用道具 举报

54

主题

130

帖子

130

积分

等级: 免费版

注册:
2021-7-10
曾用名:
 楼主| 发表于 2023-5-22 16:15 | 显示全部楼层
有什么办法能测试出来mc+和+zq1这两个参数错误的原因吗?
回复

使用道具 举报

34

主题

9255

帖子

5万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2023-5-22 16:18 | 显示全部楼层
具体的保存信息是什么,请贴出来。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

34

主题

9255

帖子

5万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2023-5-22 16:21 | 显示全部楼层
本帖最后由 技术006 于 2023-5-22 16:25 编辑

具体的报错信息是什么,请贴出来。

你试着在这两个变量定义处改成:
context.mc="("+get_dynainf (context.s1, 219)+")"
context.zq0='1分钟'
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

54

主题

130

帖子

130

积分

等级: 免费版

注册:
2021-7-10
曾用名:
 楼主| 发表于 2023-5-22 16:24 | 显示全部楼层
def parameter():
    input_par("bzc",0,0,100000,1)
    input_par("bzs1",0,0,100000,1)
    input_par("bzs2",0,0,100000,1)
    input_par("szc",0,0,100000,1)
    input_par("szs1",0,0,100000,1)
    input_par("szs2",0,0,100000,1)
def init(context):
    context.s1 = context.run_info.base_book_id #context.run_info.base_book_id获取当前合约代码

上面这些信息在盘后都能读取出来,
而mc+和+zq1这两个参数是在 def handle_bar(context): 这个代码段里了。会不会是收盘后def handle_bar(context):代码里面的参数就都传输不了了?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 微信登录

本版积分规则

手机版|小黑屋|上海金之塔信息技术有限公司 ( 沪ICP备13035422号 )

GMT+8, 2025-1-8 02:49 , Processed in 0.231218 second(s), 24 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表