V4.10版本C++頭文件更新了哪些內(nèi)容,對(duì)我們有什么實(shí)際的影響嗎? 能否提供下更新內(nèi)容
4.1版本主要增加了幾個(gè)擴(kuò)展函數(shù),此外,金字塔對(duì)于升級(jí)采取的舊版本兼容模式,因此不會(huì)影響你編寫(xiě)的舊版本。
其中更新增加的函數(shù)如下:
//////////////////////////////////////////////////////////////////////////
//以下函數(shù)4.1版本金字塔支持
//獲取期權(quán)保證金
//////////////////////////////////////////////////////////////////////////
#define OPTIONMARGINRATE_EXTFUN 0x001
//參數(shù)結(jié)構(gòu)
typedef struct{
WORD m_nMarket; //品種市場(chǎng)
char m_szLabel[10]; //期權(quán)品種代碼
float m_fP1; //P1為保證金公式調(diào)整系數(shù)1,目前交易所默認(rèn)為12%,即取值0.12;
float m_fP2; //P2為保證金公式調(diào)整系數(shù)2,目前交易所默認(rèn)為7%,即取值0.07;
BYTE m_nType; //0為取義務(wù)倉(cāng)開(kāi)倉(cāng)保證金最低標(biāo)準(zhǔn) 1為義務(wù)倉(cāng)維持保證金最低標(biāo)準(zhǔn)。
}OPTIONMARGINRATE_EXTFUN_ST;
//返回值 返回double類型的保證金數(shù)據(jù)指針(為避免數(shù)據(jù)區(qū)被其他功能調(diào)用破壞,請(qǐng)及時(shí)保存該指針數(shù)據(jù)內(nèi)容)
// 若返回NULL表示調(diào)用失敗
//////////////////////////////////////////////////////////////////////////
//引用任意品種任意周期的任意指標(biāo)輸出,其使用方法與PEL中的StkIndiEx函數(shù)相同(具體使用范例詳見(jiàn)CMainWindowDlg::OnButton1Gedata函數(shù))
//注意:4.10版本以后的功能
//////////////////////////////////////////////////////////////////////////
#define STKINDIEX_EXTFUN 0x002
//參數(shù)結(jié)構(gòu)
typedef struct{
WORD m_nMarket; //品種市場(chǎng)
char m_szLabel[10]; //品種代碼
char m_szIndiName[256]; //調(diào)用的指標(biāo)、交易系統(tǒng),例如 "MA.MA1(8,12,26,60)"表示調(diào)用MA均線的MA1線條,參數(shù)依次為9,12,26,60
// “RSI”表示調(diào)用RSI指標(biāo),參數(shù)為默認(rèn)公式參數(shù)
// 若沒(méi)有指定公式線,默認(rèn)返回最后一個(gè)可見(jiàn)線數(shù)據(jù)
BYTE m_nCoType; //坐標(biāo)軸類型 0交易日坐標(biāo) 1自然日 2交易交易時(shí)間
BYTE m_nPeriod; //周期類型,有效值范圍為(0-24),依次表示:
//0 1分鐘 1 5分鐘 2 15分鐘 3 30分鐘 4 60分鐘 5日線 6周線 7月線 8年線 9多日線 10分筆成交
//11多小時(shí)線 12多秒線 13多分鐘線 14季度線 15半年線 16節(jié)氣線 17 3分鐘 18 10分鐘 19 多筆線
BYTE m_nPower; //是否采取復(fù)權(quán)模式 0不采取 1采取
int m_nPeriodNum; //當(dāng)m_nPeriod周期>=20時(shí),m_nPeriodNum為自定義N周期的具體數(shù)字
DWORD m_nDataNum; //引用的具體數(shù)據(jù)個(gè)數(shù),該數(shù)字必須是大于0的數(shù)字;注意:如果數(shù)字過(guò)大會(huì)影響效率
}STKINDIEX_EXTFUN_ST;
//返回值及結(jié)構(gòu)定義
//調(diào)用返回的數(shù)據(jù)結(jié)構(gòu)
typedef struct{
DATE m_timeDate; //對(duì)應(yīng)的K線周期時(shí)間
double m_dbValues; //指標(biāo)線數(shù)值
}STKINDIEX_EXTFUN_DATA;
//調(diào)用返回的結(jié)構(gòu)
//注意1、該返回值使用共享內(nèi)存,多次調(diào)用將只會(huì)保存后者的結(jié)果數(shù)據(jù),因此調(diào)用后該結(jié)果值應(yīng)該自行存放其他數(shù)組中。
// 2、該函數(shù)效率較低,不要頻繁調(diào)用該函數(shù),建議自行采取算法將結(jié)果值保存,以便重復(fù)使用。
typedef struct{
STKINDIEX_EXTFUN_DATA * m_pValues; //調(diào)用返回的數(shù)據(jù)
int m_nDataCount; //調(diào)用返回的數(shù)據(jù)個(gè)數(shù),若為-1表示調(diào)用失敗
}STKINDIEX_EXTFUN_DATA_RET;
///////////////////////////////////////////////////////////////////////////////////////////////////
//調(diào)取歷史財(cái)務(wù)數(shù)據(jù)
////注意:4.10版本以后的功能
//////////////////////////////////////////////////////////////////////////
#define FINANCE_EXTFUN 0x003
//調(diào)用參數(shù)結(jié)構(gòu) BLOCK_STRUCT
//返回值及結(jié)構(gòu)定義
//注意: 該返回值使用共享內(nèi)存,多次調(diào)用將只會(huì)保存后者的結(jié)果數(shù)據(jù),因此調(diào)用后該結(jié)果值應(yīng)該自行存放其他數(shù)組中。
typedef struct{
FINANCE_STRUCTEx * m_pData; //歷史財(cái)務(wù)數(shù)據(jù)結(jié)構(gòu)數(shù)組
UINT m_nDataCount; //數(shù)組個(gè)數(shù)
}FINANCEEX_EXTFUN_DATA;
//////////////////////////////////////////////////////////////////////////////////////////////////
//獲取擴(kuò)展持倉(cāng)信息
////注意:4.10版本以后的功能
//////////////////////////////////////////////////////////////////////////
#define HOLDINGINFO3_EXTFUN 0x004
typedef struct {
int BuyHoding; //該該持倉(cāng)品種買(mǎi)入持倉(cāng)總量
double BuyCost; //該持倉(cāng)品種持倉(cāng)成本
int BuyTodayHoding; //該持倉(cāng)品種今買(mǎi)持總量(對(duì)于證券市場(chǎng),該參數(shù)為實(shí)際可用持倉(cāng))
int SellHoding; //該持倉(cāng)品種賣(mài)出持倉(cāng)總量
double SellCost; //該持倉(cāng)品種賣(mài)出持倉(cāng)成本
int SellTodayHoding;//該持倉(cāng)品種的今賣(mài)出持倉(cāng)總量(對(duì)于證券市場(chǎng),該參數(shù)為實(shí)際可用持倉(cāng))
double PNL; //該持倉(cāng)品種浮動(dòng)盈虧
double UseMargin; //該持倉(cāng)品種的保證金占用
char szCode[10]; //該持倉(cāng)品種代碼
WORD Market; //該持倉(cāng)品種市場(chǎng)
BYTE HoldType;// 倉(cāng)位類型 表示該持倉(cāng)的類型,針對(duì)不同市場(chǎng),
// 為0 分別為 期貨(投機(jī)倉(cāng)) 股票(普通倉(cāng)) 期權(quán)(普通倉(cāng)) ;
// 為1 分別為 期貨(保值倉(cāng)) 股票(融資倉(cāng)) 期權(quán)(備兌倉(cāng))
}HOLDINGINFO3_DATA;
//調(diào)用參數(shù)結(jié)構(gòu)
typedef struct {
UINT Index; //輸入?yún)?shù),指定基于0索引的持倉(cāng)和約信息,持倉(cāng)和約總量參見(jiàn) Holding2 屬性。
char * szAccount; //輸入?yún)?shù),可缺省,登陸其他帳戶(CTP,金仕達(dá),恒生,股票等)的帳戶名稱,若不填寫(xiě)則表示當(dāng)前默認(rèn)的帳戶
HOLDINGINFO3_DATA stRetHolding; //輸出參數(shù),相應(yīng)的持倉(cāng)信息填寫(xiě)與此
}HOLDINGINFO3_EXTFUN_DATA;
//返回值:若返回NULL表示調(diào)用失敗
//////////////////////////////////////////////////////////////////////////
//獲取擴(kuò)展未成交信息
////注意:4.10版本以后的功能
//////////////////////////////////////////////////////////////////////////
#define ORDERINFO3_EXTFUN 0x005
typedef struct {
int OrderID; //未成交訂單ID
int ConSign; //本次委托數(shù)量
int Filled; //已成交數(shù)量
int Remaining; //未成交數(shù)量
int Action; //動(dòng)作類型 0買(mǎi)入 1賣(mài)出
int OrderType; //訂單類型 0限價(jià) 1市價(jià) 2停損 3市價(jià)停損
double LmtPrice; //當(dāng)OrderType等于0時(shí)為限價(jià),為3時(shí)為停損限價(jià)
char szAccount[32]; //帳戶信息數(shù)組
int Kaiping; //開(kāi)平倉(cāng)類型 0開(kāi)倉(cāng) 1平倉(cāng)
char szCode[10]; //該持倉(cāng)品種代碼
WORD Market; //該持倉(cāng)品種市場(chǎng)
BYTE HoldType;// 倉(cāng)位類型 表示該持倉(cāng)的類型,針對(duì)不同市場(chǎng),
// 為0 分別為 期貨(投機(jī)倉(cāng)) 股票(普通倉(cāng)) 期權(quán)(普通倉(cāng)) ;
// 為1 分別為 期貨(保值倉(cāng)) 股票(融資倉(cāng)) 期權(quán)(備兌倉(cāng))
}ORDERINFO3_DATA;
//調(diào)用參數(shù)結(jié)構(gòu)
typedef struct {
UINT Index; //輸入?yún)?shù),指定基于0索引的持倉(cāng)和約信息,和約總量參見(jiàn) OrderNum2 屬性。
ORDERINFO3_DATA stRetOrder; //輸出參數(shù),相應(yīng)的合約信息填寫(xiě)與此
}ORDERINFO3_EXTFUN_DATA;
//返回值:若返回NULL表示調(diào)用失敗
//////////////////////////////////////////////////////////////////////////
//獲取擴(kuò)展當(dāng)日成交明細(xì)信息
////注意:4.10版本以后的功能
//////////////////////////////////////////////////////////////////////////
#define TRADEDETALIED3_EXTFUN 0x006
typedef struct {
DATE Date; //成交時(shí)間
char szCode[10]; //該持倉(cāng)品種代碼
WORD Market; //品種市場(chǎng)
int OrderType; //成交單類型,0限價(jià) 1市價(jià) 2停損 3限價(jià)停損
int Action; //成交方向 0買(mǎi)入 1賣(mài)出
float Price; //成交價(jià)格
int Volume; //成交量
int Kaiping; //開(kāi)平倉(cāng)類型,0開(kāi)倉(cāng) 1平倉(cāng)
BYTE HoldType;// 倉(cāng)位類型 表示該持倉(cāng)的類型,針對(duì)不同市場(chǎng),
// 為0 分別為 期貨(投機(jī)倉(cāng)) 股票(普通倉(cāng)) 期權(quán)(普通倉(cāng)) ;
// 為1 分別為 期貨(保值倉(cāng)) 股票(融資倉(cāng)) 期權(quán)(備兌倉(cāng))
}TRADEDETALIED3_DATA;
//調(diào)用參數(shù)結(jié)構(gòu)
typedef struct {
UINT Index; //輸入?yún)?shù),基于0索引的成交明細(xì)
char * szAccount; //輸入?yún)?shù),成交帳戶,可省略,若省略則表示當(dāng)前默認(rèn)激活帳戶
TRADEDETALIED3_DATA stRetDetalied; //輸出參數(shù),相應(yīng)的成交明細(xì)信息填寫(xiě)與此
}TRADEDETALIED3_EXTFUN_DATA;
//返回值:若返回NULL表示調(diào)用失敗
//////////////////////////////////////////////////////////////////////////
//請(qǐng)求刷新同步指定或全部登錄的兩融賬戶中的可融券信息
////注意:4.10版本以后的功能
#define SYNCHROSECURITIES_EXTFUN 0x007
//輸入?yún)?shù): char * szAccount 指定需要刷新的賬戶,若為空字符串則表示刷新全部賬戶的可融券信息
//返回值: 無(wú)
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//得到指定賬戶的可融券品種數(shù)量
////注意:4.10版本以后的功能
#define SECURITIES_COUNT_EXTFUN 0x008
//輸入?yún)?shù): char * szAccount 指定需要刷新的賬戶,若為空字符串則表示刷新全部賬戶的可融券信息
//返回值 返回double類型的可融券品種數(shù)量數(shù)據(jù)指針(為避免數(shù)據(jù)區(qū)被其他功能調(diào)用破壞,請(qǐng)及時(shí)保存該指針數(shù)據(jù)內(nèi)容)
//注意:使用該函數(shù)方法前請(qǐng)務(wù)必調(diào)用SYNCHROSECURITIES_EXTFUN函數(shù)已確保可融券信息已經(jīng)下載到客戶端
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//得到指定賬戶的指定基于0索引的融券信息
////注意:4.10版本以后的功能
#define GET_SECURITIES_EXTFUN 0x009
//調(diào)用參數(shù)結(jié)構(gòu)
typedef struct {
UINT Index; //輸入?yún)?shù),指定基于0索引可融券品種索引,可融券品種數(shù)量調(diào)用SECURITIES_COUNT_EXTFUN擴(kuò)展函數(shù)得到。
char * szAccount; //輸入?yún)?shù),指定的賬戶,若為空字符串則表示當(dāng)前默認(rèn)賬戶
char szCode[10]; //輸出參數(shù),該持倉(cāng)品種代碼
WORD Market; //輸出參數(shù),品種市場(chǎng)
int Volume; //輸出參數(shù),可融券數(shù)量
}SECURITIES_EXTFUN_DATA;