Ограничить длинную позицию до стоимости портфеля в кванстрате - R - PullRequest
0 голосов
/ 30 января 2020

Мой портфель в Quantstrat, похоже, вкладывает больше денег, чем позволил бы мой уровень капитала:

initeq <- 100000 #default initial equity in our portfolio
initAcct(account.st, portfolios = portfolio.st, initDate = initdate, currency = "GBP", initEq = initeq)

add.rule(strategy.st, name = "ruleSignal",
         arguments = list(sigcol = "thresholdentry",
                          sigval = TRUE,
                          ordertype = "market",
                          orderside = "long",
                          prefer = "Close",
                          replace=FALSE,
                          TxnFees = "fee",
                          osFUN = IKTrading::osMaxDollar,
                          tradeSize = tradesize, maxSize = tradesize),
         type = "enter")

Таким образом, мой стартовый капитал должен составить £ 100k, но когда я проверяю final_acct$portfolios$firststrat, я обнаруживаю, что Long.Value быстро превышает 100 000 фунтов стерлингов:

          | Long.Value |Short.Value |Net.Value |Gross.Value |Realized.PL | Unrealized.PL  | Gross.Trading.PL | Txn.Fees | Net.Trading.PL|

2016-01-07  0.00    0   0.00    0.00    0.000000    0.00    0.000000    0.00000 0.00000
2016-01-08  22696.70    0   22696.70    22696.70    0.000000    0.00    0.000000    -163.48349  -163.48349
2016-01-11  43755.86    0   43755.86    43755.86    0.000000    -73.04  -73.036293  -155.66097  -228.69726
2016-01-12  50987.62    0   50987.62    50987.62    0.000000    380.82  380.820825  -54.25473   326.56610
2016-01-13  51066.12    0   51066.12    51066.12    0.000000    78.52   78.501426   0.00000 78.50143
2016-01-14  50483.78    0   50483.78    50483.78    0.000000    -582.32 -582.341496 0.00000 -582.34150
2016-01-15  56346.89    0   56346.89    56346.89    0.000000    -1408.13    -1408.114127    -56.35611   -1464.47024
2016-01-18  93142.72    0   93142.72    93142.72    0.000000    -524.25 -524.225861 -276.60029  -800.82615
2016-01-19  114083.91   0   114083.91   114083.91   0.000000    1963.11 1963.094442 -134.89045  1828.20400
2016-01-20  110115.66   0   110115.66   110115.66   0.000000    -3968.26    -3968.246460    0.00000 -3968.24646
2016-01-21  126552.35   0   126552.35   126552.35   0.000000    1486.71 1486.683973 -104.75002  1381.93396
2016-01-22  127340.41   0   127340.41   127340.41   -98.367680  1821.38 1723.010825 -31.01953   1691.99129
2016-01-25  127029.63   0   127029.63   127029.63   0.000000    -310.77 -310.777709 0.00000 -310.77771
2016-01-26  127241.26   0   127241.26   127241.26   0.000000    211.63  211.623548  0.00000 211.62355
2016-01-27  128504.60   0   128504.60   128504.60   0.000000    1263.34 1263.342828 0.00000 1263.34283
2016-01-28  126390.50   0   126390.50   126390.50   0.000000    -2114.10    -2114.098625    0.00000 -2114.09862
2016-01-29  134509.26   0   134509.26   134509.26   0.000000    3128.36 3128.350821 -34.95203   3093.39879
2016-02-01  134659.76   0   134659.76   134659.76   0.000000    150.51  150.504521  0.00000 150.50452
2016-02-02  132240.90   0   132240.90   132240.90   0.000000    -2418.88    -2418.865774    0.00000 -2418.86577

К началу второго месяца инвестируется 132 000 фунтов стерлингов, когда прибыль net составляет всего £ 393.

Как можно Ли я ограничить общую длинную стоимость значением портфеля?

...