Short sell with backtest Engine

4 vues (au cours des 30 derniers jours)
ando
ando le 15 Jan 2021
Commenté : Tim Billingsley le 31 Août 2021
What's the most effecient way to implement short selling strategies with the backtestEngine?
Using this Matlab example as a reference: https://www.mathworks.com/help/finance/backtest-investment-strategies-with-trading-signals.html
It appears that if you change crossoverRebalanceFcn to output negative portfolio weights, for example
change
new_weights(idx) = availableCapital / uninvestedAssets;
to
new_weights(idx) = -availableCapital / uninvestedAssets;
That seems to work. Is that the correct way to implement a short? Any other considerations with this approach or is there a better approach?

Réponse acceptée

Brendan
Brendan le 20 Jan 2021
hello again Ando,
Yes, that is how you take short positions using the backtestEngine. You just set a negative weight on an asset. Since the total weights should equal to 1, shorting an asset will mean you have additional weight to allocate to long positions, or else the unallocated weight will stay in cash earning the RiskFreeRate.
cheers,
-brendan
  1 commentaire
Tim Billingsley
Tim Billingsley le 31 Août 2021
Is the backtestEngine really set up to handle short positions? When I have negative weights on an asset, there are intermediate buy and sell costs and also unaccounted for Turnover values?
Regards
Tim

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Portfolio Optimization and Asset Allocation dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by