CStDatabase功能:从物理盘读取文件数据,具体实现时是以一个接口为主(CSelfDB), 只有主接口取不到数据时,才会循环调用其它接口获取数据。
class CSelfDB : public CQianlong
class CQianlong : public IStStore:数据接口由CQianlong 来实现的。
class CStDatabase : public Object:负责对IStStore的操作,而IStStore又是通过CQianlong 来实现的
解释: IStStore有两个实现
公用实现:\StkLib\Src\StStore.cpp 实现IStStore公用接口函数(IStStore中一部分函数)
下面的实现读取物理文件部分
1.class CQianlong : public IStStore
2.class CSelfDB : public CQianlong 因为CQianlong已经实现了IStStore接口,如果有自己的数据文件,就用自己的数据文件;如果没有自己的数据文件,就使用乾隆的数据文件
3.class CShenglong : public IStStore
4.自己新加了一个大智慧的实现
这个工程是实现股票数据结构、技术指标计算的动态连接库,代码与平台无关。
其中比较重要的几个文件如下:
Database.h 取数据文件接口定义
QianLong.h 钱龙格式数据文件接口定义
SelfDB.h 自有格式数据文件接口定义,除了除权数据和行情数据外,
其他与钱龙一样
Stock.h 股票数据结构定义
Technique.h 技术指标类定义
Container.h 股票信息数据CStockInfo的数组类
Express.h 股票列表视图的列变量定义,以及自定义列的表达式计算
Strategy.h 策略定义
Profile.h 记录软件的用户配置并保存
StKLib.h 定义了历史数据下载要的网址
#define OEM_SERVER_DOMAIN “www.ninebulls.com” // 公司网站地址,
// 注:软件中历史数据下载要从该网址下载
BaseData.cpp 基本资料数据结构类实现
Database.cpp 数据文件读写实现 。本地数据类,提供对磁盘数据的操作接口,包括股票信息,各种周期K线数据,资料,权息资料的读取和安装。包括:class IStStore和class CStDatabase : public Object
DRData.cpp 除权数据结构数组类实现
KData.cpp K线数据结构数组类实现
Report.cpp 行情数据结构数组类实现
Minute.cpp 行情分时数据结构数组类实现
Outline.cpp 行情额外数据结构数组类实现
QianLong.cpp 钱龙数据文件读写实现
SelfDB.cpp 自有格式数据文件读写实现
Stock.cpp 股票数据结构实现
StStore.cpp 数据文件读写实现
TechCL.cpp 自有技术指标
TechEnergy.cpp 能量类技术指标
TechKLine.cpp K线叠加类技术指标
Technique.cpp 技术指标基类
TechSwing.cpp 摆动类技术指标
TechTrend.cpp 趋势类技术指标
TechOther.cpp 其它类技术指标
Container.cpp 股票信息数据CStockInfo的数组类实现
Express.cpp 股票列表视图的列变量定义,以及自定义列的表达式
计算实现
Strategy.cpp 策略定义实现
Profile.cpp 记录软件的用户配置并保存工程StkLib的几个全局静态变量: