Skip to content

SaidJacobo/strategy_factory_core

Repository files navigation

Strategy Factory

Strategy Factory is a web application designed to let you code, test and deploy your trading bots easily — all from your browser!

Interface

What can you do with Strategy Factory?

🤖 Trading Strategy Coding

Code your strategies directly in the browser, with visual tools to analyze their behavior.

🔹 Built on top of Backtesting.py → If you already use this library, it will feel familiar.

Demo GIF

⚡ Mass Strategy Execution

Run your bots across multiple tickers and timeframes from your broker.

Demo GIF

🧪 Strategy Testing

Put your strategy to the test with the following methods:

  • Monte Carlo
  • Random Test
  • Luck Test
  • T-Test
  • Correlation Test

Demo GIF

🚀 Deploy your bot

Put your bot to run in real time!

Demo GIF

⚙️ Installation

Requirements

Steps

  • Log in with your broker account on MetaTrader5
  • Create and activate a virtual environment
  • Run python install_dependencies.py
  • Launch the app with python app/main.py

Notes and Recommendations

  • In some cases, brokers don’t use "pure" ticker names (e.g., EURUSD might be EURUSDm). In such cases, the app might fail.

  • Currently, Strategy Factory assumes the account base currency used for operations is USD.

  • The core of the application is built on the Backtesting.py library, but to implement some extra features, a fork of the project was made.

Docs

📕 https://saidjacobo.github.io/strategy_factory_core/app/backbone.html

Tutorial (only in spanish)

📺 https://www.youtube.com/playlist?list=PLIS81qU4XbMc8n5pinieZsrb4K4hhutjw

🤝 Contributing

Contributions are welcome and greatly appreciated! 🎉 Whether you want to report a bug, request a new feature, improve the documentation, or submit code improvements — you are more than welcome.

How to Contribute

  1. Fork this repository — Click the Fork button at the top right.
  2. Clone your fork
git clone https://github.com/your-username/strategy_factory.git
  1. Create a new branch
git checkout -b feature/your-feature-name
  1. Make your changes
    Implement bug fixes, new features, or improvements.
  2. Commit your changes
git commit -m "Add: description of your change"
  1. Push to your fork
git push origin feature/your-feature-name
  1. Open a Pull Request — Go to the repository and click New pull request.

Guidelines

  • Follow the existing code style and structure.
  • Write clear and descriptive commit messages.
  • If possible, include tests for your changes.
  • Document any new features or behaviors.

Discussions and Issues

If you're not sure where to start, check the Issues tab for open bugs or feature requests. You can also start a discussion if you have ideas or questions.


⭐ Support the Project

If you find this project useful, consider giving it a ⭐ star on GitHub — it really helps!

Contact

📧 [email protected]

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published