Examples 功能演示简要说明

Example01: 一个简单的报撤单功能演示

演示功能：
1. 通过配置文件创建API实例；
2. 启动API，启动成功后，调用login接口登录柜台；
3. 等数据加载完毕后，发送一手多头开仓报单请求；
4. 等待3秒后，针对所有的报单对象，尝试撤单；
5. 等待3秒后，调用logout接口登出柜台；
6. 演示用户自定义数据对象的用法：使用整型变量计算onOrder回调次数


Example02: 一个简单的策略功能演示

说明：本演示代码需要接入外部行情，仅用于API功能演示用途，不能用于生产环境。
策略：根据行情数据选择买卖方向，每个方向的仓位最多持仓1手。
根据实时行情判断：
1. 假如卖出量小于买入量，或卖出量大于买入量不足10手：
  1.1 如果持有空头仓位，那么以当前卖价平空头仓位；
  1.2 如果没有多头仓位，那么以当前买价建多头仓位；

2. 假如卖出量大于买入量超过10手：
  2.1 如果持有多头仓位，那么以当前买价平多头仓位；
  2.2 如果没有空头仓位，那么以当前卖价建空头仓位；

演示功能：
1. 通过配置文件创建API实例；
2. 启动API，启动成功后，调用login接口登录柜台；
3. 等数据加载完毕后，实时接入外部行情；
4. 根据行情和交易策略，进行报单；
5. 经过1000次行情处理后，退出交易；


Example03: 一个简单的协议报撤单功能演示

演示功能：
1. 通过配置文件创建API实例；
2. 启动API，启动成功后，调用login接口登录柜台；
3. 等数据加载完毕后，使用协议方式发送一手多头开仓报单请求；
4. 等待3秒后，针对所有的报单，使用协议方式尝试撤单；
5. 等待3秒后，调用logout接口登出柜台；
6. 预热报单的构建和发送；


Example04: 一个不通过配置文件创建API的示例

演示功能：
1. 不通过配置文件创建API实例；
2. 通过setConfig配置API实例的参数；
3. 通过getConfig读取API实例的参数并打印到屏幕，以便于检查参数值；
4. 启动API，启动成功后，调用login接口登录柜台；
5. 登录柜台成功后，打印登录用户的账户信息；
6. 等待3秒后，调用logout接口登出柜台；


Example05: 一个简单的报撤单功能演示

演示功能：
1. 通过配置文件创建API实例；
2. 启动API，启动成功后，调用login接口登录柜台；
3. 等数据加载完毕后，发送一手多头开仓报单请求；
4. 等待3秒后，针对所有的报单，尝试撤单；
 4.1 如果报单状态不可撤，打印不可撤消息至屏幕；
 4.2 如果报单状态可撤销，按照柜台流水号发送撤单请求；
 4.3 如果撤单成功，则通过onCancelOrder()接口通知撤单成功；
 4.4 如果撤单失败，则通过onOrder()接口通知撤单失败；
5. 等待3秒后，调用logout接口登出柜台；


Example06: 一个简单的命令行交互模式演示

演示功能：
1. 通过配置文件创建API实例；
2. 输入命令启动API；
3. 输入命令停止API；
4. 输入命令登录柜台；
5. 输入命令登出柜台；
6. 输入命令发送默认报单；
7. 输入命令撤销所有已有的报单；
8. 输入命令发送询价请求；
9. 输入命令查看报单列表；
10. 输入命令查看成交明细；
11. 输入命令查看仓位明细；
12. 输入命令修改密码；


Example07: 一个多API实例的报撤单演示

注意，本示例代码演示的是一种错误用法：
1. API-1登录账号AccountID-1；
2. API-2登录账号AccountID-2；
3. 通过API-1查询某个合约InstrumentID的对象指针；
4. 使用该合约对象构造报单对象InputOrder；
5. 通过API-2发送构造好的报单对象；

虽然报单是通过API-2（AccountID-2）发送的，但是合约对象属于API-1（AccountID-1）；
因此，报单依然属于AccountID-1的报单，且通过AccountID-1的回调接口接收回报。

演示功能：
1. 通过两份配置文件创建两个API实例；
2. 两个API分别连接和登录柜台；
3. 等数据加载完毕后，从API-1查询合约对象，并使用API-2发送报单，验证报单回报从API-1返回；
4. 等待3秒后，撤销未成交报单；
5. 等待3秒后，登出柜台；


Example08: 一个简单的命令行交互模式演示多线程报单

演示功能：
1. 通过配置文件创建API实例；
2. 输入命令调用API接口；
3. 当用户发送报单指令时，启动5个线程发送5个报单；


Example09: 一个简单的协议报撤行权对冲单功能演示

演示功能：
1. 通过配置文件创建API实例；
2. 启动API，启动成功后，调用login接口登录柜台；
3. 等数据加载完毕后，使用协议方式发送行权报单请求；
4. 等待3秒后，针对所有的行权报单，使用协议方式尝试撤单；
5. 等待3秒后，调用logout接口登出柜台；


Example10: 一个简单多线程多实例报单示例

演示功能：
1. 通过两个配置文件创建两个API实例；
2. 两个API实例分别在不同线程中执行报单；
