C++程序化/量化学习视频教程系列 第013节:C语言结构(C++结构体struct)相关知识及鼎元量化软件中蜡烛图线(K线,TKvalue),tick线数据结构说明
C++程序化/量化学习视频教程系列 第013节:C语言结构(C++结构体struct)相关知识及鼎元量化软件中蜡烛图线(K线,TKvalue),tick线数据结构说明[mp4]http://mp4.qhlt.club/Cpp-Video/013.mp4[/mp4]
C++程序化学习视频教程系列安排如下:
第一楼:教学视频。一般控制在15分钟左右;
第二椄:视频课程中使用的程式源码。
第三楼:视频教学中需要用到的一些文档或资源。
第四楼:其它的一些边角料,特别是一些经典程序化策略的回测类的部分会放到下面楼层里面。
参与模式如下:
1、希望参与到编写策略与调试方面的工作通过上面的联系方式联系管理员咨询即可。记的加群,有问题第一时间交流,也可以在论坛指定版发贴交流,专用版地址:[url=http://www.qhlt.cn/forum-244-1.html]http://www.qhlt.cn/forum-244-1.html[/url];
2、有意申请试用及绑定期货账户跑实盘网友可以联系管理员,以及开通的方式。
3、基于C++策略交易软件具有:1、软件小(50兆不到);2、效率高(C++语言);3、功能精(专注于策略);4、对服务噐或电脑兼容性好(WIN系统)等优势,特别适合长期跑程序化的客户朋友,特别是有稳定交易模式客户更适合使用C++构建的交易系统。
4、最全的C++期货程序化(量化)教程、视频、源码、课件、资源汇总贴【C++期货程序化/量化研究必备资源贴!】:[url]http://www.qhlt.cn/thread-160231-1-1.html[/url];
5、鼎元C++量化程式码技术指标源码C++版模板【建议在test.h和test.cpp中同步至最新,方便统一调用和使用,一次编辑多次使用!】:[url]http://www.qhlt.cn/thread-160230-1-1.html[/url];
6、如何使用鼎元C++量化软件以及需要准备的些什么?[C++量化入门必读!]:[url]http://www.qhlt.cn/thread-160415-1-1.html[/url];
联系方式:
C++微信群:[img=180,180]http://p.algo2.net/2024/0922/23852f86ccf81.png[/img] QQ群:[img=140,180]http://p.algo2.net/2024/0115/3c6af4df957c3.jpg[/img] 管理员微信:[img]http://www.qhlt.cn/link/wx.png[/img];管理员QQ:[img]http://www.qhlt.cn/link/q.png[/img] C语言结构(C++结构体struct)相关知识
C构体优点:
简单数据封装:适合封装多种类型的简单数据,通常用于数据的存储。
轻量级:相比 class,结构体语法更简洁,适合小型数据对象。
面向对象支持:支持构造函数、成员函数和访问权限控制,可以实现面向对象的设计。/C++ 数组允许定义可存储相同类型数据项的变量,但是结构是 C++ 中另一种用户自定义的可用的数据类型,它允许您存储不同类型的数据项。
范例:[code]#include <iostream>
#include <vector>
#include <map>
#include <cstring>
using namespace std;
struct books
{
char title[50];
char author[50];
char subject[100];
int book_id;
};
int main()
{
books book1;
books book2;
//book1信息
strcpy_s(book1.title, "C++教程");
strcpy_s(book1.author, "run");
strcpy_s(book1.subject, "编程语言");
book1.book_id = 12345;
//book2信息
strcpy_s(book2.title, "CSS教程");
strcpy_s(book2.author, "run");
strcpy_s(book2.subject, "前端技术");
book2.book_id = 12346;
cout << book1.book_id << endl;
return 0;
}[/code]**** Hidden Message ***** 鼎元C++软件中tick结构体[code]///深度行情
struct CThostFtdcDepthMarketDataField
{
///交易日
TThostFtdcDateType TradingDay;
///合约代码
TThostFtdcInstrumentIDType InstrumentID;
///交易所代码
TThostFtdcExchangeIDType ExchangeID;
///合约在交易所的代码
TThostFtdcExchangeInstIDType ExchangeInstID;
///最新价
TThostFtdcPriceType LastPrice;
///上次结算价
TThostFtdcPriceType PreSettlementPrice;
///昨收盘
TThostFtdcPriceType PreClosePrice;
///昨持仓量
TThostFtdcLargeVolumeType PreOpenInterest;
///今开盘
TThostFtdcPriceType OpenPrice;
///最高价
TThostFtdcPriceType HighestPrice;
///最低价
TThostFtdcPriceType LowestPrice;
///数量
TThostFtdcVolumeType Volume;
///成交金额
TThostFtdcMoneyType Turnover;
///持仓量
TThostFtdcLargeVolumeType OpenInterest;
///今收盘
TThostFtdcPriceType ClosePrice;
///本次结算价
TThostFtdcPriceType SettlementPrice;
///涨停板价
TThostFtdcPriceType UpperLimitPrice;
///跌停板价
TThostFtdcPriceType LowerLimitPrice;
///昨虚实度
TThostFtdcRatioType PreDelta;
///今虚实度
TThostFtdcRatioType CurrDelta;
///最后修改时间
TThostFtdcTimeType UpdateTime;
///最后修改毫秒
TThostFtdcMillisecType UpdateMillisec;
///申买价一
TThostFtdcPriceType BidPrice1;
///申买量一
TThostFtdcVolumeType BidVolume1;
///申卖价一
TThostFtdcPriceType AskPrice1;
///申卖量一
TThostFtdcVolumeType AskVolume1;
///申买价二
TThostFtdcPriceType BidPrice2;
///申买量二
TThostFtdcVolumeType BidVolume2;
///申卖价二
TThostFtdcPriceType AskPrice2;
///申卖量二
TThostFtdcVolumeType AskVolume2;
///申买价三
TThostFtdcPriceType BidPrice3;
///申买量三
TThostFtdcVolumeType BidVolume3;
///申卖价三
TThostFtdcPriceType AskPrice3;
///申卖量三
TThostFtdcVolumeType AskVolume3;
///申买价四
TThostFtdcPriceType BidPrice4;
///申买量四
TThostFtdcVolumeType BidVolume4;
///申卖价四
TThostFtdcPriceType AskPrice4;
///申卖量四
TThostFtdcVolumeType AskVolume4;
///申买价五
TThostFtdcPriceType BidPrice5;
///申买量五
TThostFtdcVolumeType BidVolume5;
///申卖价五
TThostFtdcPriceType AskPrice5;
///申卖量五
TThostFtdcVolumeType AskVolume5;
///当日均价
TThostFtdcPriceType AveragePrice;
///业务日期
TThostFtdcDateType ActionDay;
};[/code]数据范例:
[img]http://p.algo2.net/2024/1121/118b193106134.png[/img] 鼎元C++软件中bar线(TKVALUE)结构体[code]struct TKVALUE
{
string sDate;
string sTime;
string InstrumentID;
string sPeriod;
double dOpen = 0;
double dHigh = 0;
double dLow = 0;
double dClose = 0;
int nVolume = 0;
int nOpenInterest = 0;
string sDayNight;
};[/code][img]http://p.algo2.net/2024/1121/926cd8d80e7b4.png[/img] 鼎元C++数据存放形式:
TKVALUE:数据存放形式:
[img]http://p.algo2.net/2024/1124/84fdd1ea69046.png[/img]
[img]http://p.algo2.net/2024/1124/f3db447fccb73.png[/img]
tick数据存放形式:
[img]http://p.algo2.net/2024/1124/d8cc165e66252.png[/img]
[img]http://p.algo2.net/2024/1124/0d44e167a061f.png[/img] 如何订阅tick数据:
1、在onrun函数中:[code]SubscribeMarketData(sInst);[/code]2、在OnMarketData(CThostFtdcDepthMarketDataField* t)中调用方法:[code]
mapMd[t->InstrumentID] = *t;
t->LastPrice;//调用某个变量值,此处是最新价。
[/code]如何订阅bar数据:[code]
map<string, TKVALUE >::iterator it;
for (it = mapK[period][inst].begin(); it != mapK[period][inst].end(); ++it)
{
计算如何调用和计算。。。。。。。。。。。。。。。。。。。。。。
}
[/code][code]
map<string, TKVALUE>::reverse_iterator it;
for (it = mapK[period][inst].rbegin(); it != mapK[period][inst].rend(); ++it)
{
计算如何调用和计算。。。。。。。。。。。。。。。。。。。。。。
}
[/code]1、在onrun中[code]
RsqBar(sPeriod, sInst);//查询历史K线
ma = average(sPeriod, sInst, length); //调用简单移动平均线数值[/code]2、OnMarketData(CThostFtdcDepthMarketDataField* t)中调用[code]ma = average(sPeriod, sInst, length); //调用简单移动平均线数值[/code]3、在:OnBarOpen(TKVALUE t)中调用[code]ma = average(sPeriod, sInst, length); //调用简单移动平均线数值[/code]
页:
[1]