MT4交易平台API Manager - 每组获得证券

时间:2017-05-11 08:57:35

标签: c++ mt4

我正在使用MetaTrader 4交易平台的API管理器

我需要所有证券 GROUP

例如,

GROUP =初步| SECUTIRY_0 =外汇| SECUTIRY_1 = CFD | SECUTIRY_2 = |

我有一些提示如何在下面执行:

    1. 在使用CfgRequestSymbolGroup(ConSymbolGroup配置)请求证券配置后,您获得了所有证券。*
    1. 所以你得到了每个安全性的ConSymbolGroup,现在配置[0]是外汇,配置[1]是cfd,配置[2]是金属,例如。*
    1. 然后使用CfgRequestGroup(int total)请求组配置,您将获得每个组的ConGroup结构。
    1. ConGroup具有ConGroupSec secgroups [MAX_SEC_GROUPS]参数 - 安全组设置。*
    1. 索引将是相同的,因此secgroups [0]是该组的外汇设置,secgroups [1]是cfd,依此类推。*

我的代码在下面,但无法获得所需的结果,在下面的代码中,我获得了包含证书和列表的列表,但无法根据上述说明获取索引以获得此格式的结果

GROUP =初步| SECUTIRY_0 =外汇| SECUTIRY_1 = CFD | SECUTIRY_2 = |

undefined

1 个答案:

答案 0 :(得分:1)

以下是为您提供所需数据的代码段,因此您可以根据需要输出:

ConSymbolGroup sgconfigurations[MAX_SEC_GROUP];
_manager->Manager->CfgRequestSymbolGroup(sgconfigurations);

int total = 0;
ConGroup* result = _manager->Manager->CfgRequestGroup(&total);

for (int i = 0; i < total; i++)
{
    for (int j = 0; j < MAX_SEC_GROUP; j++) {
        if (result[i].secgroups[j].show == 1 && sgconfigurations[j].name != NULL && sgconfigurations[j].name[0] != '\0') {
            char* groupName = result[i].group;
            char* securityName = sgconfigurations[j].name;
        }
    }
}