我如何构建我的应用程序以回测 Rails 中的数据?

How can I architecture my application to backtest data in Rails?

我想回测一些数据,我希望我的回测和分析的输出成为我的应用程序决策的输入。

我考虑过复制一个 model/table 以执行我的回测和分析,但这样我的工作量就会加倍,而且可扩展性不是特别好。

是否可以为特定的 class 动态切换 rails 环境? IE。创建一个 BacktestingService class,任何数据库 read/writes 都对 'test' 数据库完成,而应用程序的其余部分继续使用 development/production 环境?

你能为我的用例提出任何其他解决方案吗?

使用 connected_to 我可以切换到不同的数据库(在本例中 :test),在 connected_to 区块内执行我的回测和分析:

 ActiveRecord::Base.connected_to(database: :test) do
    backtest stuff here
 end

在块外我可以使用我的默认数据库。

我发现这很有用:https://prathamesh.tech/2019/08/13/rails-6-multi-database-part-two/