python交易接口
◑
# 填入相对路径加载 DLL Dll = windll.LoadLibrary(".\MetaTrade.dll")
◑
# 多账户批量获取五档报价 ClientIdList = [ClientId1, ClientId2] ClientIdArray = (c_int * len(ClientIdList))(*ClientIdList) ZqdmList = [b'Zqdm1', b'Zqdm2'] ZqdmArray = (c_char_p * len(ZqdmList))(*ZqdmList) Count = len(ZqdmList) ResultList = [cast(Result1, c_char_p), cast(Result2, c_char_p)] ResultArray = (c_char_p * len(ResultList))(*ResultList) ErrorInfoList = [cast(ErrorInfo1, c_char_p), cast(ErrorInfo2, c_char_p)] ErrorInfoArray = (c_char_p * len(ErrorInfoList))(*ErrorInfoList) Dll.GetMultiAccountsQuotes(ClientIdArray, ZqdmArray, c_int(Count), ResultArray, ErrorInfoArray)
◑
# DLL 反初始化
◑
# Count 参数和多账号批量查询意义一样 ClientIdList = [ClientId1, ClientId2] ClientIdArray = (c_int * len(ClientIdList))(*ClientIdList) CategoryList = [Category1, Category2] CategoryArray = (c_int * len(CategoryList))(*CategoryList) EntrustTypeList = [EntrustType1, EntrustType2] EntrustTypeArray = (c_int * len(EntrustTypeList))(*EntrustTypeList) GddmList = [b'Gddm1', b'Gddm2'] GddmArray = (c_char_p * len(GddmList))(*GddmList) ZqdmList = [b'Zqdm1', b'Zqdm2'] ZqdmArray = (c_char_p * len(ZqdmList))(*ZqdmList) PriceList = [Price1, Price2] PriceArray = (c_float * len(PriceList))(*PriceList) QuantityList = [Quantity1, Quantity2] QuantityArray = (c_int * len(QuantityList))(*QuantityList) Count = len(CategoryList) ResultList = [cast(Result1, c_char_p), cast(Result2, c_char_p)] ResultArray = (c_char_p * len(ResultList))(*ResultList) ErrorInfoList = [cast(ErrorInfo1, c_char_p), cast(ErrorInfo2, c_char_p)] ErrorInfoArray = (c_char_p * len(ErrorInfoList))(*ErrorInfoList) Dll.SendMultiAccountsOrders(ClientIdArray, CategoryArray, EntrustTypeArray, GddmArray, ZqdmArray, PriceArray, QuantityArray, c_int(Count), ResultArray, ErrorInfoArray)
◑
# 查询各类历史数据 Dll.QueryHistoryData(ClientId, c_int(Category), c_char_p(StartDate), c_char_p(EndDate), Result, Er rorInfo)
相关参数开发文档
◑签名void QueryHistoryData(int ClientId, int Category,const char* StartDate, const char* EndDate,char* Result, char* ErrorInfo) ;功能查询各类历史数据参数ClientId客户端 IdCategory查询信息类别0: 历史委托, 1: 历史成交, 2: 交割单StartDate开始日期格式为 yyyymmdd 字符串, 如 2018 年 5 月 1 日为 20180501EndDate结束日期, 格式同开始日期Result查询结果, 需要分配 1024*1024 字节的空间格式请参阅[Result 格式]ErrorInfo错误信息, 需要分配 256 字节的空间返回值无, 调用成功与否通过 ErrorInfo 是否为空字符串来判断
◑签名void QueryDatas(int ClientId, int Category[], int Count, char* Result[], char* ErrorInfo[]);功能单账户批量查询各类交易数据, 通过下标区分每项查询参数ClientId客户端 IdCategory[]查询信息类别数组, 具体含义请参阅[查询信息类别]Count查询项数, 即数组长度Result[]查询结果数组, 每项结果需要分配 1024*1024 字节的空间格式请参阅[Result 格式]ErrorInfo[]错误信息数组, 每项错误信息需要分配 256 字节的空间返回值无, 第 i 项查询成功与否通过 ErrorInfo[i]是否为空字符串来判断
◑签名void SendMultiAccountsOrders(int ClientId[], int Category[], int EntrustType[],const char* Gddm[], const char* Zqdm[], float Price[],int Quantity[], int Count, char* Result[], char* ErrorInfo[]);功能多账户批量下单, 通过下标区分每项委托参数ClientId[]客户端 Id 数组Category[]委托类别数组, 具体含义请参阅[委托类别]EntrustType[]报价方式数组, 具体含义请参阅[报价方式]Gddm[]股东代码数组Zqdm[]证券代码数组Price[]委托价格数组Quantity[]委托数量数组Count委托项数, 即数组长度Result[]委托结果数组, 每项结果需要分配 1024*1024 字节的空间格式请参阅[Result 格式]ErrorInfo[]错误信息数组, 每项错误信息需要分配 256 字节的空间返回值无, 第 i 项委托成功与否通过 ErrorInfo[i]是否为空字符串来判断
◑
◑签名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客户端的版本号, 一般为空字符串
◑
◑API 接口说明 签名int Init() ;功能API 初始化参数无返回值授权成功的交易账户数量返回值 < 1 时, 无需调用 Deinit 接口, 也不能调用其它接口, 否则会出错!
文章为作者独立观点,不代表股票交易接口观点
花开叶落2022-04-25
0块钱买入,跌到17块钱,也是亏了10多个点了。就怕越补仓越跌。结果套牢最后割肉,股票真的难。哎