环境配置插图:
1、把包含.dll和.lib的文件夹导入到vc++的包含目录和常规目录下
2、把把包含.dll和.lib的文件夹导入到c/c++常规的附加包含目录下
下面是 cpp文件
#define _CRT_SECURE_NO_WARNINGS
// testtradeapi.cpp :
// 一个简单的例子,介绍 CUstpFtdcTraderApi 和 CUstpFtdcTraderSpi 接口的使用。
// 本例将演示一个报单录入操作的过程
#include <stdio.h>
#include<iostream>
#include<thread>
#include <windows.h>
#include<chrono>
#include "USTPFtdcTraderApi.h"
using namespace std;
//链接库
#pragma comment(lib,"USTPmduserapi.lib")
#pragma comment(lib,"USTPtraderapi.lib")
//定义全局参数
// 报单录入操作是否完成的标志
// Create a manual reset event with no signal
HANDLE g_hEvent = CreateEvent(NULL, true, false, NULL);
// 经纪公司代码
TUstpFtdcBrokerIDType g_chBrokerID=""; //自己填写
// 交易用户代码
TUstpFtdcUserIDType g_chUserID=""; //自己填写
//交易用户密码
TUstpFtdcPasswordType g_chPassword = ""; //自己填写
//投资者编号
TUstpFtdcInvestorIDType g_chInvestorID = ""; //自己填写
//前置地址
char traderFrontAddr[] = ""; //自己填写
//用户本地最大报单号
int g_UserOrderLocalID;
//合约
TUstpFtdcInstrumentIDType g_chInstrumentID = "IF1901";
//价格
TUstpFtdcPriceType limitPrice = 3139;
int requestID = 0;
class CSimpleHandler : public CUstpFtdcTraderSpi
{
private:
// 指向 CUstpFtdcMduserApi 实例的指针
CUstpFtdcTraderApi *m_pUserApi;
public:
// 构造函数,需要一个有效的指向 CUstpFtdcMduserApi 实例的指针
CSimpleHandler(CUstpFtdcTraderApi *pUserApi) :
m_pUserApi(pUserApi) {}
~CSimpleHandler() {
}
// 当客户端与飞马平台建立起通信连接,客户端需要进行登录
virtual void OnFrontConnected()
{
CUstpFtdcReqUserLoginField reqUserLogin;
// get BrokerID
printf("BrokerID:");
strcpy(reqUserLogin.BrokerID, g_chBrokerID);
// get userid
printf("userid:");
strcpy(reqUserLogin.UserID, g_chUserID);
// get password
strcpy_s(reqUserLogin.Password, g_chPassword);
// 发出登陆请求
m_pUserApi->ReqUserLogin(&reqUserLogin, 0);
}
// 当客户端与飞马平台通信连接断开时,该方法被调用