### 算法交易支撑函数

#### 内容

- 算法交易服务器支撑事件函数
- 算法交易开发类说明
- 交易支撑函数

#### 算法交易服务器支撑事件函数

##### 内容

- 算法交易服务器支撑/事件函数说明
- SendEvent
- AddEvent
- RemoveEvent
- ScheduleEvent
- TimerEvent
- ListEvents
- SetGlobalData
- GetGlobalData
- RemoveGlobalData
- ListGlobalData

##### 算法交易服务器支撑/事件函数说明

事件函数仅在算法交易服务器支持，普通的金融分析.NET Server不被许可支持。

##### SendEvent

##### AddEvent

##### RemoveEvent

##### ScheduleEvent

##### TimerEvent

##### ListEvents

##### SetGlobalData

##### GetGlobalData

##### RemoveGlobalData

##### ListGlobalData

#### 算法交易开发类说明

##### 内容

- TSOrder2
- Tsorder2开发步骤
- Tsorder2开发范例

##### TSOrder2

TSOrder2是一个基于面向对象封装的算法交易开发工具包，基于TSL语言对于复杂的CEP异步事务处理做了底层的封装，让用户无需对CEP进行理解，简化应用开发，对于复杂的柜台交易协议做了底层的封装，隐藏交易实现细节，提高算法交易的开发效率。

继承TSORDER2类可以让应用开发人员能快速开发出稳定的算法策略。

###### 内容

- TSOrder2订单管理流程图
- TSOrder2对象属性、方法

###### TSOrder2订单管理流程图

其中蓝色模块（Init,DoOrder）需要开发员去编程实现。

###### TSOrder2对象属性、方法

####### 内容

- 构造方法
- 订单初始化
- 消息回调
- 订单动作
- release
- set_key
- get_key
- add_log
- SysLog
- 订单状态
- 订单属性
- 子单数据结构

####### 构造方法

######## 内容

- create
- Create：根据参数信息创建订单
- Create：根据订单号获得订单对象

######## create

######## Create：根据参数信息创建订单

######## Create：根据订单号获得订单对象

####### 订单初始化

######## 内容

- init

######## init

####### 消息回调

######## 内容

- DoOrder

######## DoOrder

####### 订单动作

######## 内容

- TOrder
- TOrder2
- TOrder3
- get_price
- get_pk_vol
- CancelOrder
- CancelOrder1
- CancelOrder2
- get_cdprice

######## TOrder

######## TOrder2

######## TOrder3

######## get_price

######## get_pk_vol

######## CancelOrder

######## CancelOrder1

######## CancelOrder2

######## get_cdprice

####### release

####### set_key

####### get_key

####### add_log

####### SysLog

####### 订单状态

######## 内容

- GetValue
- GetOrders

######## GetValue

######## GetOrders

####### 订单属性

######## 内容

- IsInit
- GetData
- GetOid

######## IsInit

######## GetData

######## GetOid

####### 子单数据结构

| 字段名       | 数据类型 | 说明                                                                                                               |
| ------------ | -------- | ------------------------------------------------------------------------------------------------------------------ |
| Datatype     | string   | 数据类型：<br>Position: 母单信息<br>order:子单委托<br>trade:子单成交明细                                           |
| StrategyName | string   | 算法策略名称                                                                                                       |
| InstrumentID | string   | 股票代码                                                                                                           |
| Available    | string   | 母单启动时，当前账户可用资金（买）                                                                                 |
| Direction    | string   | 买卖方向                                                                                                           |
| YdPosition   | string   | 母单启动时,当前可卖股数（卖）                                                                                      |
| Position     | string   | 母单启动时,当前持有股数（卖）                                                                                      |
| TSOrderID    | string   | 母单、或子单订单号（交易网关）                                                                                     |
| OrderID      | string   | 子单委托号（柜台）                                                                                                 |
| EntrustID    | string   | 子单撤单号（柜台）                                                                                                 |
| OffsetFlag   | string   | 期货开平方向                                                                                                       |
| OrderStatus  | string   | 母单或子单状态<br>0：全部成交<br>1：部分成交<br>5：撤单<br>a：正在委托(柜台还未返回)<br>c：委托成功<br>w：正在撤单 |
| StatusMsg    | string   | 母单或子单状态信息                                                                                                 |
| Price        | string   | 子单委托价格                                                                                                       |
| Vol          | string   | 子单委托数量                                                                                                       |
| TradeVol     | string   | 子单成交数量                                                                                                       |
| TradeAmount  | string   | 子单成交金额                                                                                                       |
| OrderTime    | string   | 子单委托时间（网关）                                                                                               |
| OrderTime2   | string   | 子单委托时间（柜台）                                                                                               |
| Cancel       | string   | 母单、子单是否可撤单                                                                                               |

##### Tsorder2开发步骤

> > 新建一个算法类，继承基类TSorder2。

> > 重载init()方法，对数据进行初始化，参数符合要求的订单，进行下单，参数不符合要求的订单，则初始化失败，结束订单。另外一些预处理也在初始化中进行，如交易时间的规范化，VWAP交易量分布的预测，TWAP下单数量和下单次数的计算等。

> > 重载DoOrder()方法，实现子单的拆分与下单。使用基类中提供的方法，获得订单状态、下单状态等，进行拆单、下单、撤单。

##### Tsorder2开发范例

案例：

开发一个算法交易策略，每间隔5秒以买一价买入100股，同时将小于买一价的未成交委托单做撤单处理。

```tsl
type MyOrder = class(TsOrder2)
function init();override;
begin
    // 订单初始化，检查定单有效性
    if OrderData_['策略开始时间'] < today() + strtotime('9:30:00') then OrderData_['策略开始时间'] := today() + strtotime('9:30:00');
    if OrderData_['策略开始时间'] > today() + strtotime('11:30:00') and OrderData_['策略开始时间'] < today() + strtotime('13:00:00') then OrderData_['策略开始时间'] := today() + strtotime('13:00:00');
    if timeof(OrderData_['策略结束时间']) > strtotime('15:00:00') then OrderData_['策略结束时间'] := today() + strtotime('15:00:00');
    // 获得总交易时间
    total_trade_seconds := class(TS_TradeManager).GetTradeSeconds(OrderData_['策略开始时间'], OrderData_['策略结束时间']);
    if total_trade_seconds <= 0 then begin
        release('初始化失败（交易时间段错误）');
        return 0;
    end;
    return 1;
end;
function DoOrder();virtual; // 下单、撤单等
begin
    t := now();
    if t >= OrderData_['策略结束时间'] then begin//订单执行截止时间
    release('策略生命期到,强制结束算法策略');
    return;
end;
stkid := OrderData_ ['代码'];
SetSysParam(pn_stock(), stkid);
buy1_price := rd(10); // 买一档价格
// 撤单（撤掉所有<买一价的子单）
child_orders := GetOrders(4); // 获取所有可撤单的子单
for i := 0 to length(child_orders) - 1 do begin
    if strtofloat(child_orders[i][‘Price’]) < buy1_price then CancelOrder(child_orders[i][‘EntrustID’]); // 子单撤单
end;
// 下子单
TOrder(‘B’, buy1_price, 100, ’test’);
end;
```

注：开发中cep不能设置断点进行调试，需要使用syslog，将相关信息打印出来，保存在TXT文档中。

#### 交易支撑函数

##### 内容

- 交易指令
- 交易指令扩展及算法交易

##### 交易指令

###### 内容

- TT_UserLogin
- TT_UserLogout
- TT_WT
- TT_MultiWT
- TT_CancelWT
- TT_Query
- 异步消息返回字段
- 交易接口调用错误表

###### TT_UserLogin

用途：交易指令相关函数。
参数：

返回：处理后的结果值。

范例

```tsl
timeout := 3000;
// 登陆天软证券模拟交易柜台
h := TT_UserLogin("Tinysoft", "", "123456", "888888", timeout, errmsg);
// 登陆CTP柜台
h := TT_UserLogin("上期技术",
"tcp://asp-sim2-front1.financial-trading-platform.com:26205@2030", "123456", "888888",
timeout, errmsg);
```

参考http://www.tinysoft.com.cn/TSDN/HelpDoc/SearchContent.tsl?r=ref&KeyWord=

###### TT_UserLogout

范例

```tsl
timeout := 3000;
h := TT_UserLogin("上期技术",
"tcp://asp-sim2-front1.financial-trading-platform.com:26205@2030", "123456",
"888888", timeout, errmsg);
TT_Logout(h, timeout);
```

参考http://www.tinysoft.com.cn/TSDN/HelpDoc/SearchContent.tsl?r=ref&KeyWord=

###### TT_WT

用途：交易指令相关函数。
参数：

返回：处理后的结果值。

范例

```tsl
timeout := 3000;
h := TT_UserLogin("上期技术",
"tcp://asp-sim2-front1.financial-trading-platform.com:26205@2030",
"123456",
"888888",
Timeout,
errmsg);
if (h) then return TT_WT(h, "多开", ”IF1301”, 2300, 1, timeout, "开仓测试", 0);
```

参考http://www.tinysoft.com.cn/TSDN/HelpDoc/SearchContent.tsl?r=ref&KeyWord=

###### TT_MultiWT

用途：交易指令相关函数。
参数：

返回：处理后的结果值。

范例

```tsl
timeout := 3000;
order_str := "SH600000|B|9.5|10;SH600005|S|3.2|10;";
h := TT_UserLogin("XXX证券", "M", "123456", "888888", timeout);
if (h) then begin
    return TT_MultiWT(h, order_str, '23456', timeout);
end;
```

###### TT_CancelWT

用途：交易指令相关函数。
参数：

返回：处理后的结果值。

范例

```tsl
timeout := 3000;
h := TT_UserLogin("XXX证券", "M", "123456", "888888", timeout);
if (h) then begin
    // 撤单委托号为：89898989
    t1 := TT_CancelWT(h, "89898989", 0, timeout);
    // 多笔撤单
    t2 := TT_CancelWT(h, "8989|8970|6547|89008|4556", 0, timeout);
    // 撤单批量委托
    t3 := TT_CancelWT(h, "23456", 1, timeout);
end;
```

###### TT_Query

用途：交易指令相关函数。
参数：

返回：处理后的结果值。

####### 内容

- 结算查询
- 结算确认
- 查询资金
- 查询委托
- 查询成交
- 查询持仓
- 查询持仓明细
- 查询合约
- 使用范例

####### 结算查询

CTP特有

| ConfirmDate | ConfirmTime |
| ----------- | ----------- |
| 20110929    | 09:00:03    |

####### 结算确认

CTP特有

| ConfirmDate | ConfirmTime |
| ----------- | ----------- |
| 20110929    | 09:00:03    |

CTP柜台为了让投资者了解当前的交易风险。每天，终端程序第一次登入Thost成功后，必须查询投资者结算结果(ReqQrySettlementInfo) 和确认投资者结算结果(ReqSettlementInfoConfirm)，才能正常发送交易指令，包括报单、撤单、服务器预埋单等指令。在一天中，如果投资者中已经确认了结算结果，以后登入Thost，就不再必须确认结算结果，就可以直接发送交易指令了。

TT_Query(h,’结算查询’,’’,timeout);//结算确认查询

返回结果为结算日期及结算时间数组，表示已经结算确认，如果返回为空，则投资者必须进行结算确认：

TT_Query(h,’结算确认’,’’,timeout);//结算确认

####### 查询资金

证券返回

| 序号 | 字段名称       | 中文名称       | 标准输出 | 说明                       |
| ---- | -------------- | -------------- | -------- | -------------------------- |
| 1    | AccountID      | 投资者账号     | 是       |                            |
| 2    | StaticRights   | 静态权益       | 是       |                            |
| 3    | DynamicRights  | 动态权益       | 是       |                            |
| 4    | Available      | 可用资金       | 是       | 可用资金=可取资金+入金金额 |
| 5    | Commission     | 手续费         | 是       |                            |
| 6    | CloseProfit    | 平仓盈亏       | 是       |                            |
| 7    | PositionProfit | 持仓盈亏       | 是       |                            |
| 8    | CurrMargin     | 当前保证金总额 | 是       |                            |
| 9    | FrozenMargin   | 冻结的保证金   | 是       |                            |

CTP返回

| 序号 | 字段名称               | 中文名称         | 标准输出 | 说明 |
| ---- | ---------------------- | ---------------- | -------- | ---- |
| 1    | StaticRights           | 静态权益         | 是       |      |
| 2    | DynamicRights          | 动态权益         |          |      |
| 3    | Available              | 可用资金         |          |      |
| 4    | Commission             | 手续费           | 是       |      |
| 5    | CloseProfit            | 平仓盈亏         | 是       |      |
| 6    | PositionProfit         | 持仓盈亏         | 是       |      |
| 7    | CurrMargin             | 当前保证金总额   | 是       |      |
| 8    | FrozenMargin           | 冻结的保证金     | 是       |      |
| 9    | BrokerID               | 经纪公司代码     |          |      |
| 10   | AccountID              | 投资者帐号       |          |      |
| 11   | PreMortgage            | 上次质押金额     |          |      |
| 12   | PreCredit              | 上次信用额度     |          |      |
| 13   | PreDeposit             | 上次存款额       |          |      |
| 14   | PreBalance             | 上次结算准备金   |          |      |
| 15   | PreMargin              | 上次占用的保证金 |          |      |
| 16   | InterestBase           | 利息基数         |          |      |
| 17   | Interest               | 利息收入         |          |      |
| 18   | Deposit                | 入金金额         |          |      |
| 19   | Withdraw               | 出金金额         |          |      |
| 20   | FrozenCash             | 冻结的资金       |          |      |
| 21   | FrozenCommission       | 冻结的手续费     |          |      |
| 22   | CashIn                 | 资金差额         |          |      |
| 23   | Balance                | 期货结算准备金   |          |      |
| 24   | WithdrawQuota          | 可取资金         |          |      |
| 25   | Reserve                | 基本准备金       |          |      |
| 26   | TradingDay             | 交易日           |          |      |
| 27   | SettlementID           | 结算编号         |          |      |
| 28   | Credit                 | 信用额度         |          |      |
| 29   | Mortgage               | 质押金额         |          |      |
| 30   | ExchangeMargin         | 交易所保证金     |          |      |
| 31   | DeliveryMargin         | 投资者交割保证金 |          |      |
| 32   | ExchangeDeliveryMargin | 交易所交割保证金 |          |      |

####### 查询委托

证券返回

| 序号 | 字段名称     | 中文名称     | 标准输出 | 说明               |
| ---- | ------------ | ------------ | -------- | ------------------ |
| 1    | InvestorID   | 投资者代码   | 是       |                    |
| 2    | TSOrderID    | 天软委托编号 | 是       |                    |
| 3    | OrderID      | 委托编号     |          | (等于EntrustID)    |
| 4    | EntrustID    | 报单编号     | 是       | 利用该ID可进行撤单 |
| 5    | Direction    | 买卖方向     | 是       |                    |
| 6    | InstrumentID | 合约代码     | 是       |                    |
| 7    | Vol          | 报单数量     | 是       |                    |
| 8    | TradeVol     | 成交数量     | 是       |                    |
| 9    | Price        | 报单价格     | 是       |                    |
| 10   | InsertDate   | 报单日期     | 是       |                    |
| 11   | InsertTime   | 报单时间     | 是       |                    |
| 12   | OrderStatus  | 报单状态     | 是       |                    |
| 13   | CancelTime   |              |          |                    |
| 14   | Broker       | 佣金         |          |                    |
| 15   | Transfer     | 过户费       |          |                    |
| 16   | Stamp        | 印花税       |          |                    |
| 17   | StockSum     | 股票费用     |          |                    |

CTP返回

| 序号 | 字段名称            | 中文名称                 | 标准输出 | 说明                     |
| ---- | ------------------- | ------------------------ | -------- | ------------------------ |
| 1    | EntrustID           | 报单编号                 | 是       | 利用该ID可以撤单         |
| 2    | OnTradeMsg          | 委托编号                 | 是       | 利用该ID可以关联成交回报 |
| 3    | StkID               | 合约代码1                | 是       |                          |
| 4    | Price               | 报单价格                 | 是       |                          |
| 5    | Vol                 | 报单数量                 | 是       |                          |
| 6    | TradeVol            | 成交数量                 | 是       |                          |
| 7    | StatusMsg           | 状态信息                 | 是       |                          |
| 8    | OrderDate           | 报单日期                 | 是       |                          |
| 9    | OrderTime           | 委托时间                 | 是       |                          |
| 10   | BrokerID            | 经纪公司代码             |          |                          |
| 11   | InvestorID          | 投资者代码               | 是       |                          |
| 12   | InstrumentID        | 合约代码2                | 是       |                          |
| 13   | OrderRef            | 报单引用                 |          |                          |
| 14   | UserID              | 用户代码                 |          |                          |
| 15   | OrderPriceType      | 报单价格条件             |          |                          |
| 16   | Direction           | 买卖方向                 | 是       |                          |
| 17   | CombOffsetFlag      | 组合开平标志             |          |                          |
| 18   | CombHedgeFlag       | 组合投机套保标志         |          |                          |
| 19   | LimitPrice          | 价格                     |          |                          |
| 20   | VolumeTotalOriginal | 数量                     |          |                          |
| 21   | TimeCondition       | 有效期类型               |          |                          |
| 22   | GTDDate             | GTD日期                  |          |                          |
| 23   | VolumeCondition     | 成交量类型               |          |                          |
| 24   | MinVolume           | 最小成交量               |          |                          |
| 25   | ContingentCondition | 触发条件                 |          |                          |
| 26   | StopPrice           | 止损价                   |          |                          |
| 27   | ForceCloseReason    | 强平原因                 |          |                          |
| 28   | IsAutoSuspend       | 自动挂起标志             |          |                          |
| 29   | BusinessUnit        | 业务单元                 |          |                          |
| 30   | RequestID           | 请求编号                 |          |                          |
| 31   | OrderLocalID        | 本地报单编号             |          |                          |
| 32   | ExchangeID          | 交易所代码               |          |                          |
| 33   | ParticipantID       | 会员代码                 |          |                          |
| 34   | ClientID            | 客户代码                 |          |                          |
| 35   | ExchangeInstID      | 合约在交易所的代码       |          |                          |
| 36   | TraderID            | 交易所交易员代码         |          |                          |
| 37   | InstallID           | 安装编号                 |          |                          |
| 38   | OrderSubmitStatus   | 报单提交状态             |          |                          |
| 39   | NotifySequence      | 报单提示序号             |          |                          |
| 40   | TradingDay          | 交易日                   |          |                          |
| 41   | SettlementID        | 结算编号                 |          |                          |
| 42   | OrderSysID          | 报单编号                 |          |                          |
| 43   | OrderSource         | 报单来源                 |          |                          |
| 44   | OrderStatus         | 报单状态                 | 是       |                          |
| 45   | OrderType           | 报单类型                 |          |                          |
| 46   | VolumeTraded        | 今成交数量               |          |                          |
| 47   | VolumeTotal         | 剩余数量                 |          |                          |
| 48   | InsertDate          | 报单日期                 | 是       |                          |
| 49   | InsertTime          | 委托时间                 | 是       |                          |
| 50   | ActiveTime          | 激活时间                 |          |                          |
| 51   | SuspendTime         | 挂起时间                 |          |                          |
| 52   | UpdateTime          | 最后修改时间             |          |                          |
| 53   | CancelTime          | 撤销时间                 |          |                          |
| 54   | ActiveTraderID      | 最后修改交易所交易员代码 |          |                          |
| 55   | ClearingPartID      | 结算会员编号             |          |                          |
| 56   | SequenceNo          | 序号                     |          |                          |
| 57   | FrontID             | 前置编号                 |          |                          |
| 58   | SessionID           | 会话编号                 |          |                          |
| 59   | UserProductInfo     | 用户端产品信息           |          |                          |
| 60   | UserForceClose      | 用户强评标志             |          |                          |
| 61   | ActiveUserID        | 操作用户代码             |          |                          |
| 62   | BrokerOrderSeq      | 经纪公司报单编号         |          |                          |
| 63   | RelativeOrderSysID  | 相关报单                 |          |                          |
| 64   | TSOrderID           | 天软委托编号             | 是       |                          |

####### 查询成交

证券返回

| 序号 | 字段名称     | 中文名称   | 标准输出 | 说明                                   |
| ---- | ------------ | ---------- | -------- | -------------------------------------- |
| 1    | InvestorID   | 投资者代码 | 是       |                                        |
| 2    | OrderID      | 订单号     |          | 利用该ID可以关联到委托ID<br>orderSysId |
| 3    | SequenceNo   | 交易单号   | 是       |                                        |
| 4    | Direction    | 买卖方向   | 是       |                                        |
| 5    | InstrumentID | 股票代码   | 是       |                                        |
| 6    | Vol          | 成交量     | 是       |                                        |
| 7    | TradeDate    | 交易日期   | 是       |                                        |
| 8    | TradeTime    | 交易时间   | 是       |                                        |
| 9    | Price        | 成交价格   | 是       |                                        |
| 10   | Broker       | 佣金       |          |                                        |
| 11   | Transfer     | 过户费     |          |                                        |
| 12   | Stamp        | 印花税     |          |                                        |
| 13   | TradeAmount  | 股票费用   |          |                                        |

CTP返回

| 序号 | 字段名称       | 中文名称           | 标准输出 | 说明                       |
| ---- | -------------- | ------------------ | -------- | -------------------------- |
| 1    | OnTradeMsg     | 成交回报ID         | 是       | 利用该ID可以关联到委托报单 |
| 2    | StkID          | 合约代码1          |          |                            |
| 3    | TradeDate      | 成交时期           | 是       |                            |
| 4    | TradeTime      | 成交时间           | 是       |                            |
| 5    | Vol            | 成交数量           | 是       |                            |
| 6    | Price          | 成交价格           | 是       |                            |
| 7    | BrokerID       | 经纪公司代码       |          |                            |
| 8    | InvestorID     | 投资者代码         | 是       |                            |
| 9    | InstrumentID   | 合约代码2          | 是       |                            |
| 10   | OrderRef       | 报单引用           |          |                            |
| 11   | UserID         | 用户代码           |          |                            |
| 12   | ExchangeID     | 交易所代码         |          |                            |
| 13   | TradeID        | 成交编号           |          |                            |
| 14   | Direction      | 买卖方向           | 是       |                            |
| 15   | OrderSysID     | 报单编号           |          |                            |
| 16   | ParticipantID  | 会员代码           |          |                            |
| 17   | ClientID       | 客户代码           |          |                            |
| 18   | TradingRole    | 交易角色           |          |                            |
| 19   | ExchangeInstID | 合约在交易所的代码 |          |                            |
| 20   | OffsetFlag     | 开平标志           |          |                            |
| 21   | HedgeFlag      | 投机套保标志       |          |                            |
| 22   | Volume         | 数量               |          |                            |
| 23   | TradeType      | 成交类型           |          |                            |
| 24   | PriceSource    | 成交价来源         |          |                            |
| 25   | TraderID       | 交易所交易员代码   |          |                            |
| 26   | OrderLocalID   | 本地报单编号       |          |                            |
| 27   | ClearingPartID | 结算会员编号       |          |                            |
| 28   | BusinessUnit   | 业务单元           |          |                            |
| 29   | SequenceNo     | 序号               | 是       |                            |
| 30   | TradingDay     | 交易日             |          |                            |
| 31   | SettlementID   | 结算编号           |          |                            |
| 32   | BrokerOrderSeq | 经纪公司报单编号   |          |                            |

####### 查询持仓

证券返回

| 序号 | 字段名称      | 中文名称     | 标准输出 | 说明 |
| ---- | ------------- | ------------ | -------- | ---- |
| 1    | InvestorID    | 用户         | 是       |      |
| 2    | InstrumentID  | 合约代码     | 是       |      |
| 3    | PositionDate  | 持仓日期     | 是       |      |
| 4    | YdPosition    | 昨日剩余持仓 | 是       |      |
| 5    | Position      | 总持仓       | 是       |      |
| 6    | TradingDay    | 交易日       | 是       |      |
| 7    | TodayPosition | 今日买入     | 是       |      |
| 8    | YdPosition2   | 今日初始持仓 |          |      |
| 9    | StockCost     | 持仓总成本   |          |      |

CTP返回

| 序号 | 字段名称           | 中文名称           | 标准输出 | 说明 |
| ---- | ------------------ | ------------------ | -------- | ---- |
| 1    | InstrumentID       | 合约代码           | 是       |      |
| 2    | BrokerID           | 经纪公司代码       |          |      |
| 3    | InvestorID         | 投资者代码         | 是       |      |
| 4    | PosiDirection      | 持仓多空方向       |          |      |
| 5    | HedgeFlag          | 投机套保标志       |          |      |
| 6    | PositionDate       | 持仓日期           | 是       |      |
| 7    | YdPosition         | 上日持仓           | 是       |      |
| 8    | Position           | 今日持仓           | 是       |      |
| 9    | LongFrozen         | 多头冻结           |          |      |
| 10   | ShortFrozen        | 空头冻结           |          |      |
| 11   | LongFrozenAmount   | 开仓冻结金额       |          |      |
| 12   | ShortFrozenAmount  | 开仓冻结金额       |          |      |
| 13   | OpenVolume         | 开仓量             |          |      |
| 14   | CloseVolume        | 平仓量             |          |      |
| 15   | OpenAmount         | 开仓金额           |          |      |
| 16   | CloseAmount        | 平仓金额           |          |      |
| 17   | PositionCost       | 持仓成本           |          |      |
| 18   | PreMargin          | 上次占用的保证金   |          |      |
| 19   | UseMargin          | 占用的保证金       |          |      |
| 20   | FrozenMargin       | 冻结的保证金       |          |      |
| 21   | FrozenCash         | 冻结的资金         |          |      |
| 22   | FrozenCommission   | 冻结的手续费       |          |      |
| 23   | CashIn             | 资金差额           |          |      |
| 24   | Commission         | 手续费             |          |      |
| 25   | CloseProfit        | 平仓盈亏           |          |      |
| 26   | PositionProfit     | 持仓盈亏           |          |      |
| 27   | PreSettlementPrice | 上次结算价         |          |      |
| 28   | SettlementPrice    | 本次结算价         |          |      |
| 29   | TradingDay         | 交易日             | 是       |      |
| 30   | SettlementID       | 结算编号           |          |      |
| 31   | OpenCost           | 开仓成本           |          |      |
| 32   | ExchangeMargin     | 交易所保证金       |          |      |
| 33   | CombPosition       | 组合成交形成的持仓 |          |      |
| 34   | CombLongFrozen     | 组合多头冻结       |          |      |
| 35   | CombShortFrozen    | 组合空头冻结       |          |      |
| 36   | CloseProfitByDate  | 逐日盯市平仓盈亏   |          |      |
| 37   | CloseProfitByTrade | 逐笔对冲平仓盈亏   |          |      |
| 38   | TodayPosition      | 今日持仓           | 是       |      |
| 39   | MarginRateByMoney  | 保证金率           |          |      |
| 40   | MarginRateByVolume | 保证金率(按手数)   |          |      |

####### 查询持仓明细

CTP特有

| 序号 | 字段名称              | 中文名称         | 标准输出 | 说明 |
| ---- | --------------------- | ---------------- | -------- | ---- |
| 1    | InstrumentID          | 合约代码         |          |      |
| 2    | BrokerID              | 经纪公司代码     |          |      |
| 3    | InvestorID            | 投资者代码       |          |      |
| 4    | HedgeFlag             | 投机套保标志     |          |      |
| 5    | Direction             | 买卖             |          |      |
| 6    | OpenDate              | 开仓日期         |          |      |
| 7    | TradeID               | 成交编号         |          |      |
| 8    | Volume                | 数量             |          |      |
| 9    | OpenPrice             | 开仓价           |          |      |
| 10   | TradingDay            | 交易日           |          |      |
| 11   | SettlementID          | 结算编号         |          |      |
| 12   | TradeType             | 成交类型         |          |      |
| 13   | CombInstrumentID      | 组合合约代码     |          |      |
| 14   | ExchangeID            | 交易所代码       |          |      |
| 15   | CloseProfitByDate     | 逐日盯市平仓盈亏 |          |      |
| 16   | CloseProfitByTrade    | 逐笔对冲平仓盈亏 |          |      |
| 17   | PositionProfitByDate  | 逐日盯市持仓盈亏 |          |      |
| 18   | PositionProfitByTrade | 逐笔对冲持仓盈亏 |          |      |
| 19   | Margin                | 投资者保证金     |          |      |
| 20   | ExchMargin            | 交易所保证金     |          |      |
| 21   | MarginRateByMoney     | 保证金率         |          |      |
| 22   | MarginRateByVolume    | 保证金率(按手数) |          |      |
| 23   | LastSettlementPrice   | 昨结算价         |          |      |
| 24   | SettlementPrice       | 结算价           |          |      |
| 25   | CloseVolume           | 平仓量           |          |      |
| 26   | CloseAmount           | 平仓金额         |          |      |

####### 查询合约

CTP特有

| 序号 | 字段名称             | 中文名称           | 标准输出 | 说明 |
| ---- | -------------------- | ------------------ | -------- | ---- |
| 1    | InstrumentID         | 合约代码           |          |      |
| 2    | ExchangeID           | 交易所代码         |          |      |
| 3    | InstrumentName       | 合约名称           |          |      |
| 4    | ExchangeInstID       | 合约在交易所的代码 |          |      |
| 5    | ProductID            | 产品代码           |          |      |
| 6    | ProductClass         | 产品类型           |          |      |
| 7    | DeliveryYear         | 交割年份           |          |      |
| 8    | DeliveryMonth        | 交割月             |          |      |
| 9    | MaxMarketOrderVolume | 市价单最大下单量   |          |      |
| 10   | MinMarketOrderVolume | 市价单最小下单量   |          |      |
| 11   | MaxLimitOrderVolume  | 限价单最大下单量   |          |      |
| 12   | MinLimitOrderVolume  | 限价单最小下单量   |          |      |
| 13   | VolumeMultiple       | 合约数量乘数       |          |      |
| 14   | PriceTick            | 最小变动价位       |          |      |
| 15   | CreateDate           | 创建日             |          |      |
| 16   | OpenDate             | 上市日             |          |      |
| 17   | ExpireDate           | 到期日             |          |      |
| 18   | StartDelivDate       | 开始交割日         |          |      |
| 19   | EndDelivDate         | 结束交割日         |          |      |
| 20   | InstLifePhase        | 合约生命周期状态   |          |      |
| 21   | IsTrading            | 当前是否交易       |          |      |
| 22   | PositionType         | 持仓类型           |          |      |
| 23   | PositionDateType     | 持仓日期类型       |          |      |
| 24   | LongMarginRatio      | 多头保证金率       |          |      |
| 25   | ShortMarginRatio     | 空头保证金率       |          |      |

####### 使用范例

```tsl
timeout := 3000;
h := TT_UserLogin("上期技术",
"tcp://asp-sim2-front1.financial-trading-platform.com:26205@2030", "123456",
“888888”, timeout, errmsg);if (h) then begin
    a := TT_Query(h, "查询资金", "", timeout);
    b := TT_Query(h, "查询持仓", "", timeout);
    c := TT_Query(h, "查询委托", "", timeout);
    d := TT_Query(h, "查询成交", "", timeout);
    e := TT_Query(h, "结算查询", "", timeout);
    f := TT_Query(h, "结算确认", "", timeout);
end;
```

###### 异步消息返回字段

####### 内容

- 成交回报
- Logout
- OnDisconnect

####### 成交回报

证券返回

| 序号 | 字段名称     | 中文名称   | 标准输出 | 说明 |
| ---- | ------------ | ---------- | -------- | ---- |
| 1    | OrderID      | 委托单号   | 是       |      |
| 2    | TradeID      | 交易单号   | 是       |      |
| 3    | InvestorID   | 投资人代码 | 是       |      |
| 4    | OnTradeMsg   | 成交回报ID | 是       |      |
| 5    | SequenceNo   | 交易单号   | 是       |      |
| 6    | Direction    | 买卖方向   | 是       |      |
| 7    | InstrumentID | 股票代码   | 是       |      |
| 8    | Vol          | 成交量     | 是       |      |
| 9    | TradeDate    | 成交日期   | 是       |      |
| 10   | TradeTime    | 成交时间   | 是       |      |
| 11   | Price        | 成交价格   | 是       |      |
| 12   | TradeAmount  | 成交金额   |          |      |
| 13   | Broker       | 佣金       |          |      |
| 14   | Transfer     | 过户费     |          |      |
| 15   | Stamp        | 印花税     |          |      |

CTP返回

| 序号 | 字段名称       | 中文名称           | 标准输出 | 说明                       |
| ---- | -------------- | ------------------ | -------- | -------------------------- |
| 1    | OnTradeMsg     | 成交回报ID         | 是       | 利用该ID可以关联到委托报单 |
| 2    | StkID          | 合约代码           | 是       |                            |
| 3    | Vol            | 成交数量           | 是       |                            |
| 4    | Price          | 成交价格           | 是       |                            |
| 5    | TradeDate      | 成交日期           | 是       |                            |
| 6    | TradeTime      | 成交时间           | 是       |                            |
| 7    | BrokerID       | 经纪公司代码       |          |                            |
| 8    | InvestorID     | 投资者代码         | 是       |                            |
| 9    | InstrumentID   | 合约代码           | 是       |                            |
| 10   | OrderRef       | 报单引用           |          |                            |
| 11   | UserID         | 用户代码           |          |                            |
| 12   | ExchangeID     | 交易所代码         |          |                            |
| 13   | TradeID        | 成交编号           |          |                            |
| 14   | Direction      | 买卖方向           | 是       |                            |
| 15   | OrderSysID     | 报单编号           |          |                            |
| 16   | ParticipantID  | 会员代码           |          |                            |
| 17   | ClientID       | 客户代码           |          |                            |
| 18   | TradingRole    | 交易角色           |          |                            |
| 19   | ExchangeInstID | 合约在交易所的代码 |          |                            |
| 20   | OffsetFlag     | 开平标志           |          |                            |
| 21   | HedgeFlag      | 投机套保标志       |          |                            |
| 22   | Price          | 价格               | 是       |                            |
| 23   | Volume         | 数量               |          |                            |
| 24   | TradeType      | 成交类型           |          |                            |
| 25   | PriceSource    | 成交价来源         |          |                            |
| 26   | TraderID       | 交易所交易员代码   |          |                            |
| 27   | OrderLocalID   | 本地报单编号       |          |                            |
| 28   | ClearingPartID | 结算会员编号       |          |                            |
| 29   | BusinessUnit   | 业务单元           |          |                            |
| 30   | SequenceNo     | 序号               | 是       |                            |
| 31   | TradingDay     | 交易日             |          |                            |
| 32   | SettlementID   | 结算编号           |          |                            |
| 33   | BrokerOrderSeq | 经纪公司报单编号   |          |                            |

####### Logout

当交易网关和上期技术Thost服务器断开网络连接，触发此消息

| GateWay  | AccountID |
| -------- | --------- |
| 上期技术 | 9000988   |

####### OnDisconnect

当天软金融分析.NET服务器和交易网关断开连接

| error_no | error_info         |
| -------- | ------------------ |
| 10008    | 与交易网关断开连接 |

###### 交易接口调用错误表

| error_no | error_info              |
| -------- | ----------------------- |
| 10001    | 您的交易系统还没有登陆. |
| 10002    | 无效句柄.               |
| 10003    | 交易网关不存在.         |
| 10004    | 连接交易网关失败.       |
| 10005    | 交易网关不支持该功能.   |
| 10006    | 输入参数错误.           |
| 10007    | 交易网络断开.           |
| 10008    | 与交易网关断开连接      |

##### 交易指令扩展及算法交易

###### 内容

- 算法交易指令
- 期货头寸维护指令（无CEP）
- 期货头寸维护指令（CEP）

###### 算法交易指令

####### 内容

- TS_ATStart
- TS_ATStop
- TS_ATGetParamterandDefaultValue
- TS_ATQuery
- TS_ATQueryByOrderId
- 策略常用参数表
- VWAP策略常见参数表
- TWAP策略常见参数表
- QuickOrder策略常见参数表

####### TS_ATStart

用途：交易指令扩展及算法交易相关函数。
参数：

返回：处理后的结果值。

范例

```tsl
// ///////////////////////////////范例I：非篮子交易///////////////////////////////////////
argv := array("柜台名":"Tinysoft", "账号属性":"", "账号":"10000003", "密码":"10000003");
h := TT_UserLogin(argv["柜台名"], argv['账号属性'], argv["账号"], argv["密码"], 20000, err);
// 得到VWAP策略参数和缺省值
VWAPPara := TS_ATGetParamterandDefaultValue(argv, "TSVWAP");
// 修改VWAP策略的某个参数（预测量分布，用过去60天数据，其余用系统缺省参数）
VWAPPara["预测量分布所用历史天数"] := 60;
// 设置要交易股票的代码&交易方向&数量
VWAPPara["代码"] := "SZ000002";
VWAPPara["交易方向"] := "B";
VWAPPara["数量"] := 10000;
// 调用天软算法交易模型，得到订单号
OrderID := TS_ATStart(h, VWAPPara, 2000, err);
return OrderID;
// ///////////////////////////////范例I：非篮子交易///////////////////////////////////////
// ///////////////////////////////范例II：篮子交易/////////////////////////////////////////
// 要买卖的股票篮子
StockArr := array(
("代码":"SZ000001", "交易方向":"B", "多空标志":"L", "数量":1000),
("代码":"SZ000002", "交易方向":"B", "多空标志":"L", "数量":2000),
("代码":"SZ000003", "交易方向":"B", "多空标志":"L", "数量":3000),
);
argv := array("柜台名":"Tinysoft", "账号属性":"", "账号":"10000003", "密码":"10000003");
h := TT_UserLogin(argv["柜台名"], argv['账号属性'], argv["账号"], argv["密码"], 20000, err);
// 篮子交易缺省参数
BasketPara := TS_ATGetParamterandDefaultValue(Argv, "TSBasket");
// 篮子交易开始时间、结束时间
BasketPara['策略开始时间'] := date() + EncodeTime(09, 31, 0, 0);
BasketPara['策略结束时间'] := date() + EncodeTime(09, 35, 0, 0);
for nI := 0 to length(StockArr) - 1 do
begin
    // 篮子中的股票交易策略
    Para := TS_ATGetParamterandDefaultValue(Argv, "TSQuickOrder");
    Para["代码"] := StockArr[nI]["代码"];
    Para["交易方向"] := StockArr[nI]["交易方向"];
    Para["数量"] := StockArr[nI]["数量"];
    TS_ATAddItemToBasket(BasketPara, Para);
end;
// 调用天软算法交易模型，得到订单号
OrderID := TS_ATStart(h, BasketPara, 20000, ErrStr);
return OrderID;
// ///////////////////////////////范例II：篮子交易/////////////////////////////////////////
```

参考http://www.tinysoft.com.cn/TSDN/HelpDoc/SearchContent.tsl?r=ref&KeyWord=

####### TS_ATStop

用途：交易指令扩展及算法交易相关函数。
参数：

返回：处理后的结果值。

范例

```tsl
// 停止编号为156000000107的母订单
Ret := TS_ATStop(h, ’156000000107’, 20000);
```

参考http://www.tinysoft.com.cn/TSDN/HelpDoc/SearchContent.tsl?r=ref&KeyWord=

####### TS_ATGetParamterandDefaultValue

用途：交易指令扩展及算法交易相关函数。
参数：

返回：处理后的结果值。

范例

```tsl
argv := array("柜台名":"Tinysoft", "账号属性":"", "账号":"10000003", "密码":"10000003");
h := TT_UserLogin(argv["柜台名"], argv['账号属性'], argv["账号"], argv["密码"], 20000, err);
if h = 0 thenreturn “登录失败”;
// 获得天软提供的VWAP的缺省参数
argv := TS_ATGetParamterandDefaultValue(argv, 'TSVWAP');
return argv;
```

####### TS_ATQuery

用途：交易指令扩展及算法交易相关函数。
参数：

返回：处理后的结果值。

范例

```tsl
argv := array("柜台名":"Tinysoft", "账号属性":"", "账号":"10000003", "密码":"10000003");
h := TT_UserLogin(argv["柜台名"], argv['账号属性'], argv["账号"], argv["密码"], 20000, err);
return TS_ATQuery(h, date(), 0, 20000);
return TS_ATQuery(h, date(), 1, 20000);
return TS_ATQuery(h, date(), 2, 20000);
return TS_ATQuery(h, date(), 3, 20000);
```

参考http://www.tinysoft.com.cn/TSDN/HelpDoc/SearchContent.tsl?r=ref&KeyWord=

####### TS_ATQueryByOrderId

用途：交易指令扩展及算法交易相关函数。
参数：

返回：处理后的结果值。

范例

```tsl
argv := array("柜台名":"Tinysoft", "账号属性":"", "账号":"10000003", "密码":"10000003");
h := TT_UserLogin(argv["柜台名"], argv['账号属性'], argv["账号"], argv["密码"], 20000, err);
// 查询所有母订单
return TS_ATQueryByOrderId(h, Date(), '', -1, 2000);
// 查询指定母订单的委托详情
return TS_ATQueryByOrderId(h, Date(), '347500000036', 1, 2000);
// 查询指定母订单的成交详情
return TS_ATQueryByOrderId(h, Date(), '347500000036', 2, 2000);
```

参考http://www.tinysoft.com.cn/TSDN/HelpDoc/SearchContent.tsl?r=ref&KeyWord=

####### 策略常用参数表

| 字段                         | 类型     | 单位 | 缺省值 | 备注                                                                                                                                         | 详细说明                                                                                                                                                                   |
| ---------------------------- | -------- | ---- | ------ | -------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 策略名称                     | Varchar  |      |        |                                                                                                                                              |                                                                                                                                                                            |
| 策略对象类名                 | Varchar  |      |        | 策略对象ID                                                                                                                                   |                                                                                                                                                                            |
| 策略开始时间类别             | Int      |      |        | 策略开始时间<br>0：Now<br>1：固定时间                                                                                                        | 策略和下单的开始时间，一般大于等于NOW。                                                                                                                                    |
| 策略开始时间                 | DateTime |      |        | 当策略开始时间类别=1时有效                                                                                                                   | 策略和下单的开始时间，一般大于等于NOW。                                                                                                                                    |
| 策略结束时间类别             | int      |      |        | 0：开始下单向后推移N分钟（交易时间）<br>1：收盘时间向前推移N分钟（交易时间）<br>2：固定时间                                                  |                                                                                                                                                                            |
| 策略结束时间                 | DateTime |      |        | 策略截止时间<br>当下单截止时间类别=2时有效                                                                                                   | 策略和下单的截止时间，当now大于该时间时，订单将会释放，不会再有下单操作，未完成的单将会撤单                                                                                |
| 下单时间推移                 | Int      |      | 10     | 当下单截止时间类别=0或者下单截止时间类别=1时有效（交易时间）                                                                                 |                                                                                                                                                                            |
| 委托价类别                   | Int      |      | 1      | 0：市价<br>1：指定参考档<br>2：基于市价浮动%<br>3：基于市价浮动<br>4：限价<br>5:基于参考档价格浮动                                           | 非追单时间段内的委托价类别                                                                                                                                                 |
| 委托价-买卖盘参考档          | Int      |      | 1      | 对委托价类别=‘指定参考档or基于参考档价格浮动有效                                                                                             | 在买入操作时 1 为卖一档价格，在卖出操作时1为买一档价格                                                                                                                     |
| 委托价-基于市价浮动%         | Numberic | (%)  | 0      | 对委托价类别=‘基于市价浮动%’，目的为了快速买入卖出                                                                                           | 基于当时的市价按百分比浮动，既在买入操作时，委托价=市价*（1+委托价-基于市价浮动%/100）<br>卖出操作时，委托价=市价*（1-委托价-基于市价浮动%/100/100）                       |
| 委托价-基于市价浮动          | Numberic | 元   | 0      | 对委托价类别=‘基于市价浮动’，目的为了快速买入卖出                                                                                            | 基于当时的市价浮动多少元<br>买入操作时，委托价=市价+委托价-基于市价浮动<br>卖出操作时，委托价=市价-委托价-基于市价浮动                                                     |
| 限定价                       | Numberic | 元   |        | 对委托价类别=‘限价’有效                                                                                                                      | 指定委托价格                                                                                                                                                               |
| 委托价-基于参考档价格浮动    | Numberic | 元   | 0      | 对委托价类别=‘基于参考档价格浮动’有效                                                                                                        | 例如在买入时可以用买一价加上0.01元下单确保下单价格比当前市场上买一高一点点                                                                                                 |
| 撤单时间                     | Int      | 秒   | 0      | 撤单时间>0，表示超时撤单<br>=0，表示不启用超时撤单                                                                                           | 当子单的下单时间达到撤单时间还没有全部完成时，将会撤单。                                                                                                                   |
| 价格撤单模式                 | Int      |      | 1      | 0：不启用价格撤单<br>1：指定档行情撤单<br>2：基于委托价浮动%<br>3：基于委托价浮动(元)                                                        | 当子单的委托价格，超过撤单阀值时，将此子单撤单。                                                                                                                           |
| 价格撤单-买卖盘参考档        | Int      |      | 5      | 仅对价格撤单模式=【指定档行情撤单】时有效                                                                                                    | 例如，在进行买入操作时，价格撤单模式=1，价格撤单-买卖盘参考档=5，当你的委托价格小于买五价时，将会触发撤单操作                                                              |
| 价格撤单-基于委托价上浮%     | (%)      |      | 0      | 仅对价格撤单模式=【基于委托价浮动%】时有效                                                                                                   | 当当前价格>委托价\*（1+价格撤单-基于委托价上浮%/100）时撤单                                                                                                                |
| 价格撤单-基于委托价浮动下浮% | (%)      |      | 0      | 仅对价格撤单模式=【基于委托价浮动%】时有效                                                                                                   | 当当前价格<委托价\*（1-价格撤单-基于委托价浮动下浮%/100）时撤单                                                                                                            |
| 价格撤单-基于委托价上浮      | 元       |      | 0      | 仅对价格撤单模式=【基于委托价浮动(元)】时有效                                                                                                | 当当前价格>委托价+价格撤单-基于委托价上浮时撤单                                                                                                                            |
| 价格撤单-基于委托价下浮      | 元       |      | 0      | 仅对价格撤单模式=【基于委托价浮动(元)】时有效                                                                                                | 当当前价格<委托价-价格撤单-基于委托价下浮时撤单                                                                                                                            |
| 委托价阀值类别               | Int      |      | 0      | 0：不设阀值<br>1：绝对价格<br>2：相对价格（相对系统昨收）<br>3：百分比（相对系统昨收）<br>4：涨跌停不交易                                    | 当委托价超过委托价阀值时，不进行下单操作。<br>涨跌停不交易，委托价大于等于涨停价时不下单，委托价小于等于跌停价时，不下单。                                                 |
| 委托价上阀值                 | Numberic |      | 0      | 仅对委托价阀值类别=绝对价格\|相对价格\|百分比有效。                                                                                          | 委托价阀值类别=1时，委托价>委托价上阀值时不下单<br>委托价阀值类别=2时，委托价>昨收+委托价上阀值时不下单<br>委托价阀值类别=3时，委托价>昨收\*（1+委托价上阀值/100）时不下单 |
| 委托价下阀值                 | Numberic |      | 0      | 可以为负                                                                                                                                     | 委托价阀值类别=1时，委托价<委托价下阀值时不下单<br>委托价阀值类别=2时，委托价<昨收+委托价下阀值时不下单<br>委托价阀值类别=3时，委托价<昨收\*（1+委托价下阀值/100）时不下单 |
| 最小委托股数                 | Int      | 股   | 100    |                                                                                                                                              | 非追单时期的每次子单的最小委托股数，                                                                                                                                       |
| 卖出时数量是否为整手         | Int      |      | 0      | 0：不取整<br>1：取整                                                                                                                         | 某些柜台卖出时也必须取整手                                                                                                                                                 |
| 是否追单                     | Int      |      | 0      | 0：不追单<br>1：追单                                                                                                                         | 追单：<br>1、未完成的量全部委托<br>2、采用新的委托价格委托价-追单买卖盘参考档<br>3、采用新的撤单模式价格撤单-追单买卖盘参考档                                              |
| 追单开始时间类别             | Int      |      | 0      | 0：策略结束时间向前推移N分钟<br>1：固定时间                                                                                                  |                                                                                                                                                                            |
| 追单时间推移                 | Int      | 分钟 | 5      | 当追单开始时间类别=0时有效                                                                                                                   |                                                                                                                                                                            |
| 追单开始时间                 | DateTime |      |        | 当追单开始时间类别=1时有效                                                                                                                   | 追单的开始时间，一般为策略结束时间的前几分钟。                                                                                                                             |
| 委托价类别-追单              | Int      |      | 1      | 0：市价<br>1：指定参考档                                                                                                                     | 以市价或者指定参考档价格追单                                                                                                                                               |
| 委托价-追单买卖盘参考档      | Int      |      | 1      | 当委托价类别-追单=1时有效<br>1.1 委托价：如果是追单策略的话，一般用，买一/卖一档行情作为委托价<br>1.2 撤单：一般委托价在两档行情外，直接撤掉 | 当进行买入操作时，委托价-追单买卖盘参考档=1 将会以卖一价下单                                                                                                               |
| 价格撤单-追单买卖盘参考档    | Int      |      | 1      |                                                                                                                                              | 当进行买入操作时，价格撤单-追单买卖盘参考档=1 时，如果委托价小于买一价，将会撤单，重下<br>0：不启用价格撤单-追单买卖盘参考档                                               |
| 撤单时间-追单                | 秒       |      | 0      |                                                                                                                                              | 在追单时，多少秒没完全成交，则撤单重下<br>0：不启用撤单时间-追单                                                                                                           |

####### VWAP策略常见参数表

| 字段                       | 类型     | 单位 | 缺省值  | 备注                                                                                                                  | 详细说明                                                                                                                                                                                                                          |
| -------------------------- | -------- | ---- | ------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 预测量分布所用历史天数     | Int      | 天   | 20      |                                                                                                                       | 预测量分布所用历史样本天数                                                                                                                                                                                                        |
| 预测量分布所用历史样本周期 | Varchar  |      | Cy_5m() | Cy_5m()：5分钟<br>Cy_10m()：10分钟<br>…                                                                               | 预测量分布所用历史样本周期                                                                                                                                                                                                        |
| 加权方法                   | Int      |      | 1       | 0：用户自定义<br>1：算数平均法<br>2：                                                                                 |                                                                                                                                                                                                                                   |
| 用户自定义量分布           | Array    |      |         |                                                                                                                       | 自定义历史每天交易量的权重                                                                                                                                                                                                        |
| 下单周期                   | Int      | 秒   | 60      |                                                                                                                       | 每个子单的下单周期，也就是下单频率                                                                                                                                                                                                |
| 下单量增减比例(%)          | Numberic |      | 0       | （1）一般，此参数=用历史天数计算的下单周期的量的分布；<br>（2）也可以按照与测量比例，也可以在预测量比例基础上进行浮动 | 暂时未开放                                                                                                                                                                                                                        |
| 交易量分配方法             | Int      |      |         | 0：总量分配法<br>1：余额分配法<br>2: 时段分配法                                                                       | 0：子单委托量，在该时间区间未完全成交的撤单后，全部放到追单时再次委托<br>1：子单委托量，在该时间区间未完全成交的，按照以后，每个时间断所占的分配比例，再次分配。<br>2：子单委托量，在该时间区间未完全成交的，放到下个时间区间委托 |

####### TWAP策略常见参数表

| 字段           | 类型 | 单位 | 缺省值 | 备注                                            | 详细说明                                                                                                                                                                                                                          |
| -------------- | ---- | ---- | ------ | ----------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 下单方法       | Int  |      | 0      | 0：周期法<br>1：子单数量法                      | 根据周期或者子单数量来确定下单频率                                                                                                                                                                                                |
| 下单周期       | Int  | 秒   | 60     | 仅当下单方法=【周期法】有效                     | 根据交易时长和下单周期，计算出要下单次数，和每次的下单数量                                                                                                                                                                        |
| 子单数量       | Int  | 个   |        | 仅当下单方法=【子单数量法】有效                 | 根据交易时长和子单数量，计算出下单频率和每次的下单数量                                                                                                                                                                            |
| 交易量分配方法 | Int  |      |        | 0：总量分配法<br>1：余额分配法<br>2: 时段分配法 | 0：子单委托量，在该时间区间未完全成交的撤单后，全部放到追单时再次委托<br>1：子单委托量，在该时间区间未完全成交的，按照以后，每个时间断所占的分配比例，再次分配。<br>2：子单委托量，在该时间区间未完全成交的，放到下个时间区间委托 |

####### QuickOrder策略常见参数表

| 字段           | 类型 | 单位    | 缺省值 | 备注                                                     | 详细说明                                                                                                                                                                                                                                                                          |
| -------------- | ---- | ------- | ------ | -------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 下单量分配方法 | Int  | Int     | 0      | 0：一次性全部下单<br>1：盘口数量浮动%<br>2：盘口数量浮动 | 确定子单的下单数量                                                                                                                                                                                                                                                                |
| 盘口数量浮动   | Int  | % or 股 | 0      | 仅当下单量分配方法=1or2时有效<br>可以为负                | 当进行买入操作时，委托价类别=1委托价-买卖盘参考档=2时，下单量分配方法=2 时，下单数量=min(剩余数量，卖一量+卖二量+盘口数量浮动)。<br>当进行买入操作时，委托价类别=1委托价-买卖盘参考档=2时，下单量分配方法=1 时，下单数量=min(剩余数量，（卖一量+卖二量）\*（1+盘口数量浮动/100)。 |

###### 期货头寸维护指令（无CEP）

####### 内容

- TSOrder_FuturePosition

####### TSOrder_FuturePosition

用途：交易指令扩展及算法交易相关函数。
参数：无。
返回：整数。

范例

```tsl
// 案例1、增加头寸
// 如IF1303合约当前头寸为2张多头，需要加仓到4张合约，position=4
// 案例2、减少头寸
// 如IF1303合约当前头寸为8张多头，需要减仓到1张合约，position=1
// 案例3、清仓
// 在任何时候，需要清仓，position=0即可。
// 案例4、反手
// 如IF1303合约当前头寸为2张多头，现在希望反手持有5张空头合约，position=-5
Position := 4; // 案例1
return
TSOrder_FuturePosition("tcp://asp-sim2-front1.financial-trading-platform.com:26205",
"2030", "123456", "888888", "IF1303", position, -1, "");
```

###### 期货头寸维护指令（CEP）

####### 内容

- TSOrder_FuturePosition_CEP

####### TSOrder_FuturePosition_CEP

范例

```tsl
// 设置目标头寸
return Rdo2TSOrder_FuturePosition_CEP("
tcp://asp-sim2-front1.financial-trading-platform.com:26205",
"2030", "123456", "888888", "IF1303", 5, -1, "", 1);
```
