{"id":28791854,"url":"https://github.com/tudororban/alpheast","last_synced_at":"2026-03-17T09:38:55.903Z","repository":{"id":298691146,"uuid":"997600433","full_name":"TudorOrban/AlphEast","owner":"TudorOrban","description":"An event-driven backtesting engine for trading strategies","archived":false,"fork":false,"pushed_at":"2025-06-16T08:19:24.000Z","size":343,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-23T00:16:10.921Z","etag":null,"topics":["backtesting-engine","event-driven-architecture","trading-strategies"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TudorOrban.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-06T20:05:21.000Z","updated_at":"2025-06-16T08:19:28.000Z","dependencies_parsed_at":"2025-06-12T11:32:32.814Z","dependency_job_id":"2df7b27a-83f9-40fc-8f4c-f1059f694262","html_url":"https://github.com/TudorOrban/AlphEast","commit_stats":null,"previous_names":["tudororban/alpheast"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/TudorOrban/AlphEast","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TudorOrban%2FAlphEast","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TudorOrban%2FAlphEast/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TudorOrban%2FAlphEast/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TudorOrban%2FAlphEast/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TudorOrban","download_url":"https://codeload.github.com/TudorOrban/AlphEast/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TudorOrban%2FAlphEast/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30620755,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-17T08:10:05.930Z","status":"ssl_error","status_checked_at":"2026-03-17T08:10:04.972Z","response_time":56,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["backtesting-engine","event-driven-architecture","trading-strategies"],"created_at":"2025-06-18T00:05:43.403Z","updated_at":"2026-03-17T09:38:55.898Z","avatar_url":"https://github.com/TudorOrban.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AlphEast Backtesting Engine\n\n![Python Version](https://img.shields.io/badge/python-3.8%2B-blue.svg)\n![License](https://img.shields.io/badge/license-MIT-green.svg)\n[![Documentation Status](https://readthedocs.org/projects/alpheast/badge/?version=latest)](https://alpheast.readthedocs.io/en/latest/?badge=latest)\n---\n\n## 🌟 Overview\n\nAlphEast is an event-driven backtesting engine designed for developing and evaluating quantitative trading strategies. While still in its early stages of development, it provides a robust, extensible framework for simulating and evaluating multi-symbol trading strategies with realistic considerations like transaction costs and slippage.\n\nOur goal is to offer a flexible tool for researchers and traders to quickly prototype and test their ideas, without getting bogged down in boilerplate.\n\n---\n\n## 📚 Documentation\n\nFor complete usage instructions, API reference, detailed examples, and guides, please visit our official documentation website:\n\nhttps://alpheast.readthedocs.io/en/latest/\n\n---\n\n## ✨ Key Features\n\n* **Event-Driven Architecture:** Simulates market conditions and trade executions with a clear, sequential event flow.\n* **Multi-Symbol Backtesting:** Simultaneously test strategies across multiple financial instruments.\n* **Pluggable Strategies:** Easily define and integrate your own custom trading strategies.\n* **Customizable Position Sizing:** Implement various position sizing methods to manage risk and allocate capital.\n* **Realistic Simulations:** Accounts for transaction costs (commissions) and slippage to provide more accurate results.\n* **Performance Metrics \u0026 Visualization:** Generates standard trading performance metrics and plots equity curves for quick analysis.\n* **Flexible Data Ingestion:** Designed to integrate with various data sources, from direct in-memory data to custom database repositories.\n\n---\n\n## 🚀 Quick Start\n\nGet your first backtest running in minutes!\n\n### Installation\n\n```bash\npip install alpheast\n```\n\n### Basic Usage Example\n\n```python\nfrom datetime import datetime\nfrom typing import Dict, List\nfrom alpheast.config.data_source import DataSource, DataSourceType\nfrom alpheast.engine import BacktestingEngine\nfrom alpheast.config.backtest_config import BacktestingOptions\nfrom alpheast.models.interval import Interval\nfrom alpheast.models.price_bar import PriceBar\nfrom examples.basic.example_strategy import ExampleStrategy\n\n\nif __name__ == \"__main__\":\n    symbol = \"AAPL\"\n    options = BacktestingOptions(\n        symbols=[symbol],\n        start_date=datetime(2021, 1, 1),\n        end_date=datetime(2025, 1, 1),\n        interval=Interval.DAILY,\n        initial_cash=100_000.0\n    )\n\n    price_bar_data: Dict[str, List[PriceBar]] = {\n        symbol: [] # Provide your data\n    }\n    data_source = DataSource(\n        type=DataSourceType.DIRECT,\n        price_bar_data=price_bar_data,\n    )\n\n    engine = BacktestingEngine(\n        options=options,\n        data_source=data_source,\n        strategies=[ExampleStrategy(symbol)],\n    )\n    \n    results = engine.run()\n\n    if results:\n        results.print_summary()\n        results.plot_equity_curve()\n```\n\n![equity-curve](https://raw.githubusercontent.com/TudorOrban/AlphEast/main/screenshots/equity_curve.png)\n\n## ⚡️ Performance\nAlphEast is designed for efficiency and demonstrates strong scaling characteristics with both the number of symbols and the backtesting duration. Below are some example execution times measured on a standard setup:\n\n### **Execution Time (seconds)**\n\n| Symbols \\ Duration | 1 Year   | 5 Years  |\n| :----------------- | :------- | :------- |\n| **1** | 0.2124   | 0.9258   |\n| **2** | 0.3027   | 1.2424   |\n| **10** | 0.9525   | 3.6243   |\n\n## Status\nIn mid stages of development.\n\n## Contributing\nAll contributions are warmly welcomed. Head over to [CONTRIBUTING.md](https://github.com/TudorOrban/AlphEast/blob/main/CONTRIBUTING.md) for details.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftudororban%2Falpheast","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftudororban%2Falpheast","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftudororban%2Falpheast/lists"}