金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
楼主: 潘枝荣

请教怎么调用指标进行模拟量化交易

[复制链接]

14

主题

72

帖子

72

积分

等级: 免费版

注册:
2025-8-7
曾用名:
 楼主| 发表于 2025-8-28 08:57 | 显示全部楼层
技术011 发表于 2025-8-27 16:41
根据指定资金计算手数参考这段代码:
input:zj(10000,1,1000000,1);
下单资金量:=zj;

谢谢老师!请问图表程序化支持多个标的同时运行吗?然后如何实现多只标的调用同一个账户,然后为每一只标的设置资金量,比如A标的资金设置10万,按照10万全部下单;B标的资金设置8万,按照8万全部下单。(资金在同一个账户里面)
麻烦老师帮忙写一下这个代码,谢谢老师
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2025-8-28 09:14 | 显示全部楼层
1、可以运行多个标的,可以新建框架,切分多个窗口,分别加载品种进行运行。 也可以使用软件自带的多品种框架。点击窗口--多图组合--多品种组合。
2、10楼的写法,资金的设置就是ZJ变量啊,已经用input来定义了,你可以在各个窗口上单独调整这个变量的。点击K线窗口,按ALT+X,调整资金参数。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

14

主题

72

帖子

72

积分

等级: 免费版

注册:
2025-8-7
曾用名:
 楼主| 发表于 2025-8-28 10:57 | 显示全部楼层
技术010 发表于 2025-8-28 09:14
1、可以运行多个标的,可以新建框架,切分多个窗口,分别加载品种进行运行。 也可以使用软件自带的多品种框 ...

老师,新建框架后,运行时为什么K线图不显示了,界面是空白的
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2025-8-28 10:58 | 显示全部楼层
截图看下你的界面,是不是框架有问题啊,也可以先用软件自带的多品种框架试下呢。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

14

主题

72

帖子

72

积分

等级: 免费版

注册:
2025-8-7
曾用名:
 楼主| 发表于 2025-8-28 11:03 | 显示全部楼层
图片上传了。用的系统自带的水平切分。多品种框架没有权限
截图202508281100097569.png
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2025-8-28 11:10 | 显示全部楼层
你的K线被加载的指标压缩了吧,在价格坐标上右键---勾选仅随K线变动。
截图202508281110119658.png
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

14

主题

72

帖子

72

积分

等级: 免费版

注册:
2025-8-7
曾用名:
 楼主| 发表于 2025-8-28 14:38 | 显示全部楼层
老师,我模拟账户交易,没有价格是什么原因?然后还提示了可用资金不足,帮忙看看我代码是不是有问题?我希望实现的是调用账户资金的100万作为这个交易的资金,总账户有600万。

//根据指定资金计算手数参考这段代码
input:zj(5000,1,1000000,1);
下单资金量:=zj;
MarginRatio:=TACCOUNT(41);//多头保证金比率. 这个要把合约信息设置里面的费率设置正确,否则函数取到的值可能是不对的。
bzj:=Close*Multiplier*MarginRatio;//一手保证金占用
ss1:=Intpart(下单资金量/(bzj));//根据资金ZJ计算的开仓手数

//最终结果
//ss1可能会有计算出为0 的情况,而恰好为手数参数为0在函数中是满仓开的含义。因此再次处理下,当ss1为0情况下默认按下一手处理。
ss:if(ss1>0,ss1,1);


IF BUYSIGNAL THEN
  BUY(HOLDING=0,ss1,MARKET);
截图202508281436235318.png
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2025-8-28 14:53 | 显示全部楼层
本帖最后由 技术010 于 2025-8-28 14:58 编辑

没有价格,是没有成交啊。你这个计算出的报单量是2899,模拟资金不够,所以才不成交的啊。你要先排查你的代码,设置的ZJ是多少,在该品种上计算出来的手数是多少。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

14

主题

72

帖子

72

积分

等级: 免费版

注册:
2025-8-7
曾用名:
 楼主| 发表于 2025-8-28 15:05 | 显示全部楼层
技术010 发表于 2025-8-28 14:53
没有价格,是没有成交啊。你这个计算出的报单量是2899,模拟资金不够,所以才不成交的啊。你要先排查你的代 ...

我设置的资金是100万,这里显示的开仓手数是不对的。麻烦帮忙看看代码哪里出问题了,帮忙修正一下。谢谢老师!


input:zj(5000,1,1000000,1);
下单资金量:=zj;
MarginRatio:=TACCOUNT(41);//多头保证金比率. 这个要把合约信息设置里面的费率设置正确,否则函数取到的值可能是不对的。
bzj:=Close*Multiplier*MarginRatio;//一手保证金占用
ss1:=Intpart(下单资金量/(bzj));//根据资金ZJ计算的开仓手数

//最终结果
ss:if(ss1>0,ss1,1);


IF BUYSIGNAL THEN
  BUY(HOLDING=0,ss1,MARKET);
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2025-8-28 15:11 | 显示全部楼层
ss才是计算出来的报单量,你的buy语句中不能用SS1作为报单量,要用SS。
截图202508281511051269.png
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-17 04:39 , Processed in 0.139007 second(s), 23 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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