# 从 Python 到 Rust (/zh/tutorials/from-python-to-rust)

[会员专属教程（英文）](https://members.vectorbt.pro/tutorials/from-python-to-rust/)

回测代码往往与策略一起成长。它可能最初只是 notebook 中的几行代码，最终却成为完全不含 Python
的服务。这套三部分教程将带领同一个波动率收缩突破策略走完整个过程。数据和规则始终不变，因此各版本之间唯一的区别在于实现方式。

✅ 学习用四种方式编写同一个策略，从简短的研究代码，一直到无需 Python 即可运行的独立程序。随后，逐笔核对四种实现产生的订单。

✅ 有些规则无法提前准备，因为它们取决于策略刚刚执行的操作。您将了解这类规则应该放在哪个环节，并看到它产生本教程中唯一一个在模拟运行之前无法预先算出的结果。

✅ 最后，学习在新 K 线到来时继续推进同一个投资组合，而不是每次重新运行完整回测；并了解 Rust 进程如何在重启后从上次的位置继续运行 🔄

*   [静态模拟（英文）](https://members.vectorbt.pro/tutorials/from-python-to-rust/static): 通过高层 VBT、Numba、PyO3 Rust 和原生 Rust 回测同一个策略
*   [动态模拟（英文）](https://members.vectorbt.pro/tutorials/from-python-to-rust/dynamic): 实现有状态的投资组合回调，并在原生 Rust 中以流式方式运行同一个策略
*   [实时模拟（英文）](https://members.vectorbt.pro/tutorials/from-python-to-rust/live): 在新 K 线到来时继续进行路径依赖模拟，并在重启后保留模拟状态
