金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 1948|回复: 1

请问,如何取得市场上所有品种的日交易量

[复制链接]

47

主题

134

帖子

144

积分

Rank: 2

等级: 标准版

注册:
2021-5-20
曾用名:
发表于 2023-6-5 15:48 | 显示全部楼层 |阅读模式
请问,如何取得市场上所有品种的日交易量
比如市场上三大期货交易所总共有N个品种,每个品种分别有不同月份的合约,我想分别计算出每个品种的不同月份的合约的每天的交易量(或者最近几天日交易量的累计),请问如何实现?
如果我想把符合指定的交易量的品种单独存成一个板块,又如何实现,谢谢!
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-6-5 16:07 | 显示全部楼层
[PEL] 复制代码

//以下代码对SC合约无效,SC合约代码无法很好的构建
VARIABLE:codeArr[12]:='';//codeArr 品种代码数组;volArr 成交量数组;

STR:=STRTRIMRIGHT( STKLABEL, '0123456789');
//过滤掉垃圾合约
IF STRCMP(STR,'WR')=0 OR STRCMP(STR,'BB')=0 OR STRCMP(STR,'JR')=0 OR STRCMP(STR,'LR')=0  OR STRCMP(STR,'PM')=0 OR STRCMP(STR,'RS')=0 OR STRCMP(STR,'RI')=0 THEN EXIT;
 
//双年份合约,豆一和白糖虽然取消双年份,但是金字塔为保证老用户策略的正常操作,所以保持不变。因此依旧需要区分。
if STRCMP(STR,'AY')=0 or  STRCMP(STR,'BUY')=0 OR  STRCMP(STR,'SRY')=0 THEN BEGIN
 STR:=STRREPLACE(STR , 'Y','X' );
END
  

//生成每个月的合约代码 并存入到数组中。
for i=1 to 12 do //默认按照该品种有12个月份的合约。
begin
codeArr[i]:= STRCAT(str,STRRIGHT(NUMTOSTR(i/100,2),2));        
end

 
sumvol:0;
for j=1 to 12 do
begin
code:=codeArr[j];//code就是合约代码        
vox:=CALLSTOCK(code,vtvol,6,0);//调用当日的日线成交量数据
sumvol:=sumvol+vox;
end               





仅供参考,部分品种(如原油)无法奏效。  添加品种到板块 使用 ADDTOBLOCK函数即可。

上面代码 你如果是图表,你只能每个品种上运行一次 才能把全部品种的结果计算出来。没有其他快捷方式。单次运行只能计算出当前品种各个月的成交量累计值。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-15 00:57 , Processed in 0.135614 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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