From fe155703b0bc1192e7f9afed98af225e3a91da33 Mon Sep 17 00:00:00 2001 From: Chao Wang Date: Mon, 28 Mar 2022 21:18:37 -0400 Subject: [PATCH] update doc for TopK-Drop (#1015) updated doc for TopK-Drop. --- docs/component/strategy.rst | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/docs/component/strategy.rst b/docs/component/strategy.rst index 2dccc47fa..06ed686f1 100644 --- a/docs/component/strategy.rst +++ b/docs/component/strategy.rst @@ -66,18 +66,24 @@ TopkDropoutStrategy - Adopt the ``Topk-Drop`` algorithm to calculate the target amount of each stock .. note:: - ``Topk-Drop`` algorithm: + There are two parameters for the ``Topk-Drop`` algorithm: - `Topk`: The number of stocks held - `Drop`: The number of stocks sold on each trading day - Currently, the number of held stocks is `Topk`. - On each trading day, the `Drop` number of held stocks with the worst `prediction score` will be sold, and the same number of unheld stocks with the best `prediction score` will be bought. - + In general, the number of stocks currently held is `Topk`, with the exception of being zero at the beginning period of trading. + For each trading day, let $d$ be the number of the instruments currently held and with a rank $\gt K$ when ranked by the prediction scores from high to low. + Then `d` number of stocks currently held with the worst `prediction score` will be sold, and the same number of unheld stocks with the best `prediction score` will be bought. + + In general, $d=$`Drop`, especially when the pool of the candidate instruments is large, $K$ is large, and `Drop` is small. + + In most cases, ``TopkDrop`` algorithm sells and buys `Drop` stocks every trading day, which yields a turnover rate of 2$\times$`Drop`/$K$. + + The following images illustrate a typical scenario. .. image:: ../_static/img/topk_drop.png :alt: Topk-Drop - ``TopkDrop`` algorithm sells `Drop` stocks every trading day, which guarantees a fixed turnover rate. + - Generate the order list from the target amount