当前位置: 首页 > news >正文

知不知道什么叫米筐量化?怎么来的?

现在量化市场范围越来越大,各种量化系统也是普遍性的了,不过米匡量化这个开发系统通常是由交易接口的专业开发团队开发的的结果,那么米匡量化的终端又是是怎么开发成功的呢?

首先,我们可以从api接口的调用来了解,量化交易其实不难发现,有的平台可以直接就能策略优化,而米匡量化可以直接代码执行策略,如下分析:

1.开发api对于的结果:

签名

int Init();

功能

API 初始化

参数

返回值

授权成功的交易账户数量

返回值< 1 时, 无需调用 Deinit 接口, 也不能调用其它接口, 否则会出错!

签名

void Deinit();

功能

API 反初始化

参数

返回值

2.米匡量化系统调用结果:

签名

int Logon(const char* Ip, short Port, const char* Version, short Yybid, const char* Account, const char* TradeAccount,

const char* JyPassword, const char* TxPassword,

char* ErrorInfo);

功能

登录交易账户

参数

Ip

券商交易服务器IP, 注意区分普通和两融

Port

券商交易服务器端口, 注意区分普通和两融

Version

客户端的版本号, 一般为空字符串

Yybid

营业部代码, 一般为 0

Account

登录账号,一般为券商的资金账号或客户号

注: 两融账号需要额外添加 .C 结尾, 如 123456 变为 123456.C

TradeAccount

交易账号, 一般与登录账号相同, 但无需额外添加 .C 结尾

可登录券商软件, 查看股东列表, 股东列表内的资金账号就是交易账号

JyPassword

交易密码

TxPassword

通讯密码, 一般为空字符串或与交易密码相同

ErrorInfo

错误信息, 需要分配 256 字节的空间

返回值

调用成功: 客户端 Id

调用失败: 返回 <= 0

3.执行源码分享:

查询各类交易数据:

// category: 0=>资金, 1=>股份, 2=>当日委托, 3=>当日成交, 4=>可撤单,

// 5=>股东代码, 6=>融资余额, 7=>融券余额, 8=>可融证券,

// 12=>可申购新股, 13=>新股申购额度, 14=>配号, 15=>中签,

// 16=>未平仓融资合约, 17=>未平仓融券合约, 18=>未平仓两融合约

typedef void (*QueryDataProc)(int clientId, int category, char *result, char *errinfo);

const auto QueryData = reinterpret_cast<QueryDataProc>(GetProcAddress(hDLL, "QueryData"));

assert(QueryData);

std::cout << "========== 查询资金: category = 0 ==========\n";

int category = 0;

QueryData(clientId, category, result, errinfo);

if (NULL != errinfo[0]) {

std::cout << errinfo << std::endl;

} else {

std::cout << result << std::endl;

}

std::cout << std::endl;

std::cout << "========== 查询股份: category = 1 ==========\n";

category = 1;

QueryData(clientId, category, result, errinfo);

if (NULL != errinfo[0]) {

std::cout << errinfo << std::endl;

} else {

std::cout << result << std::endl;

}

std::cout << std::endl;

std::cout << "========== 查询股份: category = 1 ==========\n";

category = 1;

QueryData(clientId, category, result, errinfo);

if (NULL != errinfo[0]) {

std::cout << errinfo << std::endl;

} else {

std::cout << result << std::endl;

}

std::cout << std::endl;

http://www.lryc.cn/news/5210.html

相关文章:

  • Urho3D 事件Events
  • Rust学习入门--【8】复合类型
  • 【整理六】
  • Ubuntu20.04安装MySQL5.7与远程连接
  • 【yolov5】首次尝试目标检测利用prompt(完整操作流程)
  • 三大指标继续狂飙!重庆啤酒:不惧强弱分化加剧,深耕高端市场
  • MySQL数据库14——更新和删除数据
  • Java面试——MyBatis篇
  • C++的 new 和 delete
  • MySQL 事务原理
  • 软件测试面试自我介绍/项目介绍居然还有模板?我要是早点发现就好了
  • new RegExp的使用
  • 供应商管理软件如何选型 好用的供应商管理软件推荐
  • Python3遍历文件夹提取关键字及其附近字符
  • 「1」线性代数(期末复习)
  • C++7:STL-模拟实现vector
  • 笑死,面试官又问我SpringBoot自动配置原理
  • 分布式缓存服务DCS-企业版性能更强,稳定性更高
  • HTTP基本原理
  • 【云原生】Kubernetes(k8s)最新版本详细保姆级安装教程
  • JVM - 类加载,连接和初始化
  • [carla]关于odometry坐标中的角度坐标系 以及 到地图的映射问题
  • Python 正则表达式
  • spark03-读取文件数据分区数量个数原理
  • 操作系统(day08)内存
  • 11- 聚类算法 (KMeans/DBSCAN/agg) (机器学习)
  • 日日顺供应链|想要看清供应链发展趋势,先回答这三个问题
  • 5守护进程与线程
  • EZ-Cube简易款下载器烧写使用方法
  • sql server安装并SSMS连接