Skip to content

Commit

Permalink
[Mod] algo_trading.md
Browse files Browse the repository at this point in the history
  • Loading branch information
noranhe committed Aug 6, 2024
1 parent b22b1c5 commit 68cdeb8
Showing 1 changed file with 14 additions and 34 deletions.
48 changes: 14 additions & 34 deletions docs/community/app/algo_trading.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,31 +56,18 @@ main_engine.add_app(AlgoTradingApp)
- 每轮间隔(秒):每隔多少时间进行委托下单操作,以秒为单位;
- 开平:开、平、平今、平昨。

### 保存配置

交易算法的配置信息可以用json文件保存在本地,这样每次打开算法交易模块无需重复输入,具体操作如下:

- 在【配置名称】选项中输入该算法配置信息的命名,然后点击下方【保存配置】按钮,即可保存配置信息到本地;
- 保存配置后,在界面右侧的【配置】组件可以看到用户保存的配置名称和配置参数。

![](https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/algo_trading/4.png)

保存的配置文件在.vntrader文件夹下的algo_trading_setting.json中,如下图所示:

![](https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/algo_trading/5.png)


## 启动算法

目前VeighNa一共提供了六种常用的示例算法。本文档以时间加权平均算法(TWAP)为例,介绍算法启动过程。
目前VeighNa一共提供了五种常用的示例算法。本文档以时间加权平均算法(TWAP)为例,介绍算法启动过程。

![](https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/algo_trading/3.png)

参数配置完成后(已保存的算法信息,通过在【配置】栏对应的算法下点击【使用】,可切换界面左侧配置的信息内容),点击【启动算法】按钮,即可立刻执行算法交易。

若启动成功,则可在右上角【执行中】界面观测到该算法的执行状态。

图中算法执行的任务具体为:使用时间加权平均算法,买入10000手豆油2109合约(y2109),执行价格为9000元,执行时间为600秒,每轮间隔为6秒;即每隔6秒钟,当合约卖一价小于等于9000时,以9000的价格买入100手豆油2109合约,将买入操作分割成100次。
图中算法执行的任务具体为:使用时间加权平均算法,买入10000手豆油2109合约(y2409),执行价格为7420元,执行时间为600秒,每轮间隔为6秒;即每隔6秒钟,当合约卖一价小于等于7420时,以7420的价格买入100手豆油2409合约,将买入操作分割成100次。

## CSV启动

Expand All @@ -90,14 +77,18 @@ main_engine.add_app(AlgoTradingApp)

![](https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/algo_trading/12.png)

结合Excel的表格快速编辑功能,批量添加算法较为方便。启动成功后,CSV文件中所有算法的执行情况均会显示在【执行中】界面下,如下图所示:
结合Excel的表格快速编辑功能,批量添加算法较为方便。启动成功后,CSV文件中所有算法的执行情况均会显示在【执行中】界面下

![](https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/algo_trading/14.png)

请注意,CSV启动之后,只能在【执行中】、【日志】和【已结束】三个界面观测到内容输出及变化,不会将CSV文件中的算法信息添加到配置中。
## 停止算法

当用户需要暂停正在执行的交易算法时,可以在【执行中】界面点击【暂停】按钮,暂停某个正在执行的算法交易,如下图所示:

## 停止算法
![](https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/algo_trading/6.png)

当用户需要恢复已经暂停的交易算法时,可以在【执行中】界面点击【恢复】按钮,恢复某个已经暂停的算法交易,如下图所示:

![](https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/algo_trading/15.png)

当用户需要停止正在执行的交易算法时,可以在【执行中】界面点击【停止】按钮,停止某个正在执行的算法交易,如下图所示:

Expand All @@ -112,33 +103,22 @@ main_engine.add_app(AlgoTradingApp)

数据监控界面由四个部分构成:

执行中组件:显示正在执行的算法交易,包括:算法、参数和状态。成功启动算法之后,切换到右上角【执行中】界面,会显示该算法的执行状态,如下图所示:
执行中组件:显示正在执行的算法交易,包括:算法、参数、变量和状态。成功启动算法之后,切换到右上角【执行中】界面,会显示该算法的执行状态,如下图所示:

![](https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/algo_trading/6.png)

已结束组件:显示已完成的算法交易,同样包括:算法、参数和状态。算法结束或者停止之后,切换到右上角【已结束】界面,会显示该算法的执行状态,如下图所示:
已结束组件:显示已完成的算法交易,同样包括:算法、参数、变量和状态。算法结束或者停止之后,切换到右上角【已结束】界面,会显示该算法的执行状态,如下图所示:

![](https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/algo_trading/9.png)

日志组件:显示启动、停止、完成算法的相关日志信息。在打开算法交易模块后,会进行初始化,故【日志】组件会首先输出“算法交易引擎启动”和“算法配置载入成功”,如下图所示:
日志组件:显示启动、停止、完成算法的相关日志信息。在打开算法交易模块后,会进行初始化,故【日志】组件会首先输出“算法交易引擎启动”,如下图所示:

![](https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/algo_trading/11.png)

配置组件:用于载入algo_trading_setting.json的配置信息,并以图形化界面显示在【配置】栏下,如下图所示:

![](https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/algo_trading/8.png)

- 点击配置组件的【使用】按钮立刻读取该配置信息,并显示在委托交易界面上,随后点击【启动算法】即可开始进行交易;
- 点击配置组件的【移除】按钮可以移除该算法配置,并同步更新到json文件内。


## 示例算法

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

### DMA - 直接委托算法

直接委托算法(DMA)直接发出新的委托(限价单、停止单、市价单)。
示例算法路径位于vnpy_algotrading.algos文件夹下(请注意,个别算法是没有写开平方向的,若有需要,可基于自身需求进行个性化修改)。目前,算法交易模块提供了以下五种内置算法:

### TWAP - 时间加权平均算法

Expand Down

0 comments on commit 68cdeb8

Please sign in to comment.