代码拉取完成,页面将自动刷新
同步操作将从 1ndu5try/QTctp 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
#ifndef TRADESPI_H
#define TRADESPI_H
#include "ThostFtdcTraderApi.h"
#include <Windows.h>
#include <vector>
#include <string>
#include <map>
#include <iostream>
#include <QList>
using namespace std;
extern CThostFtdcTraderApi*pUserApi;
enum TLoginStatus {LSConnected,LSDisconnected, LSAuthenticate_successful, LSAuthenticate_failed, LSLogin_successful, LSLogin_failed};
class CTraderSpi :public QObject,public CThostFtdcTraderSpi
{
Q_OBJECT
public:
explicit CTraderSpi(QObject *parent = nullptr);
typedef struct HYstruct{
int hycs;
double hyds;
} ;
HYstruct hy(QString);
void ReqOrderInsert(QString dm,QString lx,int lots,double price);
void ReqOrderAction(QString brokerid,QString wth,QString jys);
private:
QList<CThostFtdcTraderSpi*> m_SpiList;
TThostFtdcPriceType LIMIT_PRICE;
TThostFtdcDirectionType DIRECTION;
int iRequestID = 0;
TThostFtdcFrontIDType FRONT_ID;
TThostFtdcSessionIDType SESSION_ID;
TThostFtdcOrderRefType ORDER_REF;
char INSTRUMENT_ID[7] = "";
public:
TLoginStatus Status = LSDisconnected;
signals:
void sendDataCJ(QString);
void sendDataWT(QString);
void sendDataHY(QString);
void sendDataCC(QString);
void sendDataZJ(QString);
public:
void init();
void RegisterSpi(CThostFtdcTraderSpi *pSpi);
void UnReisterSpi(CThostFtdcTraderSpi *pSpi);
///当客户端与交易后台建立起通信连接时(还未登录前),该方法被调用。
virtual void OnFrontConnected();
///当客户端与交易后台通信连接断开时,该方法被调用。当发生这个情况后,API会自动重新连接,客户端可不做处理。
///@param nReason 错误原因
/// 0x1001 网络读失败
/// 0x1002 网络写失败
/// 0x2001 接收心跳超时
/// 0x2002 发送心跳失败
/// 0x2003 收到错误报文
virtual void OnFrontDisconnected(int nReason);
///心跳超时警告。当长时间未收到报文时,该方法被调用。
///@param nTimeLapse 距离上次接收报文的时间
///客户端认证响应
virtual void OnRspAuthenticate(CThostFtdcRspAuthenticateField *pRspAuthenticateField, CThostFtdcRspInfoField *pRspInfo, int nRequestID, bool bIsLast);
void ReqQryInvestorPosition();
///登录请求响应
virtual void OnRspUserLogin(CThostFtdcRspUserLoginField *pRspUserLogin, CThostFtdcRspInfoField *pRspInfo, int nRequestID, bool bIsLast);
///登出请求响应
///报单录入请求响应
virtual void OnRspOrderInsert(CThostFtdcInputOrderField *pInputOrder, CThostFtdcRspInfoField *pRspInfo, int nRequestID, bool bIsLast);
///请求查询报单响应
virtual void OnRspQryOrder(CThostFtdcOrderField *pOrder, CThostFtdcRspInfoField *pRspInfo, int nRequestID, bool bIsLast);
///请求查询成交响应
///请求查询资金账户响应
bool IsErrorRspInfo(CThostFtdcRspInfoField *pRspInfo);
void ReqQryTradingAccount();
virtual void OnRspQryTradingAccount(CThostFtdcTradingAccountField *pTradingAccount, CThostFtdcRspInfoField *pRspInfo, int nRequestID, bool bIsLast);
///请求查询投资者响应
///请求查询合约响应
void ReqQryInstrument();
virtual void OnRspQryInstrument(CThostFtdcInstrumentField *pInstrument, CThostFtdcRspInfoField *pRspInfo, int nRequestID, bool bIsLast);
///请求查询结算信息确认响应
virtual void OnRspSettlementInfoConfirm(CThostFtdcSettlementInfoConfirmField *pSettlementInfoConfirm, CThostFtdcRspInfoField *pRspInfo, int nRequestID, bool bIsLast) ;
void ReqSettlementInfoConfirm();
virtual void OnRspQrySettlementInfoConfirm(CThostFtdcSettlementInfoConfirmField *pSettlementInfoConfirm, CThostFtdcRspInfoField *pRspInfo, int nRequestID, bool bIsLast);
virtual void OnRspQryInvestorPosition(CThostFtdcInvestorPositionField *pInvestorPosition, CThostFtdcRspInfoField *pRspInfo, int nRequestID, bool bIsLast);
///错误应答
virtual void OnRspError(CThostFtdcRspInfoField *pRspInfo, int nRequestID, bool bIsLast);
///报单通知
virtual void OnRtnOrder(CThostFtdcOrderField *pOrder);
///成交通知
virtual void OnRtnTrade(CThostFtdcTradeField *pTrade);
bool IsMyOrder(CThostFtdcOrderField *pOrder);
bool IsTradingOrder(CThostFtdcOrderField *pOrder);
};
#endif // TRADESPI_H
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。