设为首页收藏本站

 找回密码
 注册
查看: 1033|回复: 0

【旗舰版】交易标的的强弱排序策略,请教为什么不能成功运行,如图提示呢? [复制链接]

Rank: 1

精华
0
UID
291989
积分
8
帖子
5
主题
3
阅读权限
10
注册时间
2020-5-16
最后登录
2021-4-2
发表于 2020-5-29 18:44:22 |显示全部楼层
http://www.tb18.net/software/v5037.html?tab=array

案例四】交易标的的强弱排序策略

具体规则:选择三大商品交易所交易比较活跃的主力商品合约作为候选交易标的,以20根BAR的涨跌幅作为强弱比较的标准,再根据强弱排名制定交易策略。 代码如下(交易部分省略…):
Params
Numeric Length(20);    // 多少根BAR的涨跌幅
Vars
NumericArray ChangeRate;    // 保存涨跌幅的数组
NumericArray Rank;     // 保存数据源的数组
Numeric i;
Numeric j;
Numeric temp;
Begin
// 计算图表所有品种Length根BAR以来的涨跌幅
For i = 0 to DataSourceSize - 1
{
// 涨跌幅数据保存到一个数组
ChangeRate = Round((Data.Close / Data.Close[Length] - 1)*100,2);
// 数据源编号保存到另一个数组
Rank = i;
}

// 冒泡排序(降序)
For i = 1 to DataSourceSize - 1
{
For j = 0 to DataSourceSize - 1 - i
{
If(ChangeRate[j] < ChangeRate[j+1])
{
// 涨跌幅数据交换顺序
temp = ChangeRate[j];
ChangeRate[j] = ChangeRate[j+1];
ChangeRate[j+1] = temp;

// 对应的数据源编号交换顺序
temp = Rank[j];
Rank[j] = Rank[j+1];
Rank[j+1] = temp;
}
}
}

// 显示排序后的排名
For i = 0 to DataSourceSize - 1
{
temp = Rank;
Commentary("【Rank"+Text(i+1)+"】: Data"+Text(temp)+" , "+Data[temp].Symbol+" , ChangeRate = "+Text(ChangeRate)+" %");
}
End

在图表中插入23个主力交易品种后运行结果如下:
您需要登录后才可以回帖 登录 | 注册

bottom

静态版|手机版|联系我们|交易开拓者 ( 粤ICP备07044698   

GMT+8, 2024-3-29 01:12

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部