我们都知道BIGI的是期货实时行情数据,但怎么才能做到接到我们的系统也是实时行情数据呢,下面我们来探讨一下。
1. Socket连接
根据BIGI提供的IP、端口做tcp连接,连上后返回字符串“ok”,然后可以发送登陆请求。
1.1. Socket登陆
1.1.1. 登陆请求
发送登陆请求字符串:0=login|1=10002|2=abcde25oem5f6\n
0=login表示登陆;
1=10002 BIGI分配的账号;
2=abcde25oem5f6 BIGI分配的token;
“|” (0x7C)为每个数据元的分割符,分成key=value形式;
“\n” (0x0A)发送内容结束符,每条请求指令或服务端响应都以\n为结束符。
请求发出后等待登陆响应。
1.1.2. 登陆响应
登陆响应返回:0=login|1=1|2=无效的令牌或账户已过期\n
0=login表示登陆;
1=1(0)0表示登陆成功,1表示登陆错误;
2=无效的令牌或账户已过期,登陆成功或失败的描述(登陆成功、登陆账户过期、未授权的登陆账户、未授权的ip地址);
“|” (0x7C)为每个数据元的分割符,分成key=value形式;
“\n” (0x0A)发送内容结束符,每条请求指令或服务端响应都以\n为结束符。
收到登陆成功信息后即可以发起订阅请求。
1.2. Socket订阅产品行情
1.2.1. 订阅请求
发送订阅请求字符串:0=subscribe|1=6BML,HSIML,NGML\n
0=subscribe表示订阅;
1=6BML,HSIML,NGML 表示所要订阅的产品,也可以分开一个个产品订阅。
“|” (0x7C)为每个数据元的分割符,分成key=value形式;
“\n” (0x0A)发送内容结束符,每条请求指令或服务端响应都以\n为结束符。
请求发出后等待订阅响应。
发送订阅带k线的请求字符串:0=subscribe|1=6BML,HSIML,NGML|2=k\n
2=k表示除了订阅实时行情之外还要带上实时k线一起推送。
1.2.2. 订阅响应
发送订阅请求字符串:0=Subscribe|1=1|2=无效的令牌或账户已过期\n
0=subscribe表示订阅;
1=1(0)0表示登陆成功,1表示登陆错误。
2=无效的令牌或账户已过期,登陆成功或失败的描述(未授权的登陆账户或访问ip、产品xxx"已经订阅过、你没有订阅xxx产品的权限、订阅xxx成功)。
“|” (0x7C)为每个数据元的分割符,分成key=value形式;
“\n” (0x0A)发送内容结束符,每条请求指令或服务端响应都以\n为结束符。
收到订阅成功信息后即可开始正常接收服务器的最新行情。
1.3. Socket行情推送
2.3.1服务推送过来行情(不带k线)
0=hq|1=17|2=NGML|3=4.577|4=1542614598|5=1|6=4.574|7=4.577|8=1|9=3|10=9232|11=4.625|12=4.737|13=4.550|14=4.390|15=6562|16=4.510\n
0=hq表示行情;
1=17 顺序码,不是唯一码;
2=NGML 产品,唯一码;
3=4.577 最新价格;
4=1542614598 时间,行情时间(UTC+0)与1970-1-1 0:0:0过去的秒数;
5=1 现手;
6=4.574 买价;
7=4.577 卖价;
8=1 买量;
9=3 卖量;
10=9232 成交量;
11=4.625 开盘价;
12=4.737 最高价;
13=4.550 最低价;
14=4.390 昨收价;
15=6562 持仓量;不存在时为----
16=4.510 昨日结算价;不存在时为----
“|” (0x7C)为每个数据元的分割符,分成key=value形式;
“\n” (0x0A)发送内容结束符,每条请求指令或服务端响应都以\n为结束符。
2.3.2服务推送过来行情(带k线)
0=hq|1=4|2=CLML|3=62.94|4=1556512732|5=2|6=62.93|7=62.94|8=46|9=22|10=34112|11=62.95|12=63.11|13=62.79|14=62.80|15=6562|16=4.510|M1=62.94,62.94,62.93,62.94,76,1904291238,6562,4.510|M5=62.95,62.95,62.93,62.94,266,
1904291235,6562,4.510|M15=62.96,62.95,62.93,62.94,799,1904291230,6562, 4.510|M30=62.96,62.95,62.93,62.94,799,1904291230,6562,4.510|H1=62.99,
62.95,62.92,62.94,4190,1904291200,6562,4.510|D1=63.11,62.83,62.83,
62.94,57264,1904290800,6562,4.510\n
0=hq表示行情;
1=4 顺序码,不是唯一码;
2= CLML产品,唯一码;
3=62.94 最新价格;
4=1556512732 时间,行情时间(UTC+0)与1970-1-1 0:0:0过去的秒数;
5=2 现手;
6=62.93 买价;
7=62.94 卖价;
8=46 买量;
9=22 卖量;
10=34112 成交量;
11=62.95 开盘价;
12=63.11 最高价;
13=62.79 最低价;
14=62.80 昨收价;
15=6562 持仓量;不存在时为----
16=4.510 昨日结算价;不存在时为----
M1=62.94,62.94,62.93,62.94,76,1904291238,6562,4.510在时间19年04月29日12点38分1分钟k线,后面以逗号隔开的分别为高、开、低、收、成交量、持仓量、结算价、k线时间 。
M5=62.95,62.95,62.93,62.94,266,1904291235,6562,4.510在时间19年04月29日12点35分5分钟k线,后面以逗号隔开的分别为高、开、低、收、成交量、持仓量、结算价、k线时间 。
M15=62.96,62.95,62.93,62.94,799,1904291230,6562,4.510在时间19年04月29日12点30分15分钟k线,后面以逗号隔开的分别为高、开、低、收、成交量、持仓量、结算价、k线时间 。
M30=62.96,62.95,62.93,62.94,799,1904291230,6562,4.510在时间19年04月29日12点30分30分钟k线,后面以逗号隔开的分别为高、开、低、收、成交量、持仓量、结算价、k线时间 。
H1=62.99,62.95,62.92,62.94,4190,1904291200,6562,4.510在时间19年04月29日12点1小时k线,后面以逗号隔开的分别为高、开、低、收、成交量、持仓量、结算价、k线时间 。
D1=63.11,62.83,62.83,62.94,57264,1904290800,6562,4.510在时间19年04月29日日k线,后面以逗号隔开的分别为高、开、低、收、成交量、持仓量、结算价、k线时间 。
“|” (0x7C)为每个数据元的分割符,分成key=value形式;
“\n” (0x0A)发送内容结束符,每条请求指令或服务端响应都以\n为结束符。
学会了吗?还不会的BIGI还有大招哦!详情请咨询BIGI行情