Financial Toolboxのバックテストにおける仕様について

4 views (last 30 days)
Takao
Takao on 26 Oct 2020
Answered: Shoumei on 17 May 2021
Financial ToolboxのbacktestStrategy関数を使って、株取引ルールの検証をしようとしています。
その際、MATLABの挙動について不明な点があったので、質問させてください。
MATLABでバックテストを行う際には、価格データを入力する場面が2つあります。
これら2つのデータがどのような理由で分けられていて、どのような形で利用されているのか分かりません。
もしかしたら、
assetPrices ⇒ 株の購入価格
pricesTT⇒ 日々の株の評価額
なのかも知れませんが、確証が持てずにいます。
この辺りの仕様に詳しい方、よろしくお願いいたします。

Answers (1)

Shoumei
Shoumei on 17 May 2021
だいぶ時間が経過しているので、自己解決されていらっしゃるかもしれませんが、本ご質問に気づいたので回答します。
rebalanceFcnおよびrebBacktestの両方で価格データを入力引数として与えるのが不自然だというご質問かと思います。
以下のサンプルの様に、runBacktestで与える価格データをbacktestStrategyを介してrebalanceFcnに与えるようになっているので、データは同じもので、単に入れ子構造になっているだけと考えれば良いと思います。
% バックテスト用オブジェクト作成
strategy = backtestStrategy("Name",@rebalanceFcn,...
'RebalanceFrequency',rebalFreq,...
'TransactionCosts',tradingCosts,...
'LookbackWindow',ewLookback,...
'InitialWeights',initialWeights)
backtestResult = backtestEngine(strategy);
% バックテスト実行
backtestResult = runBacktest(backtester,pricesTable)
function out = rebalanceFcn(weight, PriceTable)
% 省略
end
これらの関数の例にあるプログラムを実行してみると構造が理解できると思います。

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!