示例算法

示例算法路径位于algo_trading.algos文件夹下(请注意,个别算法是没有写开平方向的,若有需要,可基于自身需求进行个性化修改)。目前,算法交易模块提供了以下六种内置算法:

DMA - 直接委托算法

直接委托算法(DMA)直接发出新的委托(限价单、停止单、市价单)。

TWAP - 时间加权平均算法

时间加权平均算法(TWAP)具体执行步骤如下:

  • 将委托数量平均分布在某个时间区域内,每隔一段时间用指定的价格挂出买单(或者卖单)。

  • 买入情况:卖一价低于目标价格时,发出委托,委托数量在剩余委托量与委托分割量中取最小值。

  • 卖出情况:买一价高于目标价格时,发出委托,委托数量在剩余委托量与委托分割量中取最小值。

Iceberg - 冰山算法

冰山算法(Iceberg)具体执行步骤如下:

  • 在某个价位挂单,但是只挂一部分,直到全部成交。

  • 买入情况:先检查撤单,最新Tick卖一价低于目标价格,执行撤单;若无活动委托,发出委托:委托数量在剩余委托量与挂出委托量中取最小值。

  • 卖出情况:先检查撤单,最新Tick买一价高于目标价格,执行撤单;若无活动委托,发出委托:委托数量在剩余委托量与挂出委托量中取最小值。

Sniper - 狙击手算法

狙击手算法(Sniper)具体执行步骤如下:

  • 监控最新Tick推送的行情,发现好的价格立刻报价成交。

  • 买入情况:最新Tick卖一价低于目标价格时,发出委托,委托数量在剩余委托量与卖一量中取最小值。

  • 卖出情况:最新Tick买一价高于目标价格时,发出委托,委托数量在剩余委托量与买一量中取最小值。

Stop - 条件委托算法

条件委托算法(Stop)具体执行步骤如下:

  • 监控最新Tick推送的行情,发现行情突破立刻报价成交。

  • 买入情况:Tick最新价高于目标价格时,发出委托,委托价为目标价格加上超价。

  • 卖出情况:Tick最新价低于目标价格时,发出委托,委托价为目标价格减去超价。

BestLimit - 最优限价算法

最优限价算法(BestLimit)具体执行步骤如下:

  • 监控最新Tick推送的行情,发现好的价格立刻报价成交。

  • 买入情况:先检查撤单:最新Tick买一价不等于目标价格时,执行撤单;若无活动委托,发出委托:委托价格为最新Tick买一价,委托数量为剩余委托量。

  • 卖出情况:先检查撤单:最新Tick买一价不等于目标价格时,执行撤单;若无活动委托,发出委托:委托价格为最新Tick卖一价,委托数量为剩余委托量。