C++程序化/量化学习视频教程系列 第025节:鼎元C++量化之使用map调用bar数据(输出相关bar的要素及进行最基础的多根bar求平均价格)及C++量化开发中的注意事项【C++量化指标公式开发系列】
- UID
- 2
- 积分
- 2892617
- 威望
- 1396340 布
- 龙e币
- 1496277 刀
- 在线时间
- 13326 小时
- 注册时间
- 2009-12-3
- 最后登录
- 2024-12-25
|
C++程序化/量化学习视频教程系列 第025节:鼎元C++量化之使用map调用bar数据(输出相关bar的要素及进行最基础的多根bar求平均价格)及C++量化开发中的注意事项【C++量化指标公式开发系列】
论坛官方微信、群(期货热点、量化探讨、开户与绑定实盘)
|
|
|
|
|
|
- UID
- 2
- 积分
- 2892617
- 威望
- 1396340 布
- 龙e币
- 1496277 刀
- 在线时间
- 13326 小时
- 注册时间
- 2009-12-3
- 最后登录
- 2024-12-25
|
1、在头文件中声明需要全局使用的变量- double avgprice;//求收盘价平均
- vector<double>closeprice;
复制代码 2、在源文件中申请调用bar数据- RsqBar(sPeriod, sInst); //申请调用数据指令
- double key = 0; //建立一个开关
- double sump = 0;
复制代码 3、建立逆向迭代器- map<string, TKVALUE>::reverse_iterator it; //建立逆向迭代器
复制代码 4、建个for循环之遍历- for (it = mapK[sPeriod][sInst].rbegin(); it != mapK[sPeriod][sInst].rend(); it++) //进行遍历
- {
- }
复制代码 5、获取需要的数据
(1)、计算加总的核心源码- sump = sump + it->second.dClose; //将最新的bar的收盘价加总至sump;
- key++; //开关自动加1
- if (key >= 5) break; //进行判断如果key大于等于20就跳出结束循环
复制代码 (2)、分项输出的核心源码- for (int i = 0; i < 5; i++)
- {
- InsertLog("第" + to_string(i) + "个 收盘价为:" + to_string(closeprice[i]));
- }
复制代码 (3)、输出到vector的核心源码- closeprice.push_back(it->second.dClose);
- key++; //开关自动加1
- if (key >= 5) break; //进行判断如果key大于等于20就跳出结束循环
复制代码 |
|
|
|
|
|
|