12 Commits

Author SHA1 Message Date
Ajasra
837c505828 Refactor 2025-05-20 16:59:17 +08:00
Simon Moisy
8ff86339d6 Add taxes functionality and refactor trading logic
- Introduced Taxes class in taxes.py to calculate and apply taxes on profits in backtest results.
- Updated main.py to include tax calculations in the results processing flow.
- Refactored trade logging in TrendDetectorSimple to account for transaction fees and ensure accurate profit calculations.
- Added a utility script (apply_taxes_to_file.py) for applying taxes to existing CSV files.
- Adjusted date range and timeframe settings in main.py for broader analysis.
2025-05-20 16:14:40 +08:00
Simon Moisy
0eb7fc77f9 Enhance data loading in main.py to support both CSV and JSON formats, improving flexibility for input data. Update date filtering and logging for better traceability. Refactor trade collection logic to ensure all trades are captured and written to separate CSV files by timeframe and stop loss percentage. Adjusted main execution parameters for broader timeframe analysis. 2025-05-19 17:35:17 +08:00
Simon Moisy
170751db0e Implement Google Sheets integration in main.py for batch updates of backtest results
- Added GSheetBatchPusher class to handle background updates to Google Sheets.
- Refactored write_results_per_combination function to write results directly to Google Sheets instead of CSV files.
- Updated process_timeframe function to handle single stop loss percentages.
- Introduced a global queue for batching results and trades for efficient updates.
- Enhanced error handling for Google Sheets API quota limits.
- Adjusted main execution flow to start the batch pusher and ensure all results are pushed after processing.
2025-05-19 02:02:03 +08:00
Simon Moisy
125d4f7d52 Add BacktestCharts class for visualizing backtest results and update main.py for enhanced data processing
- Introduced BacktestCharts class in charts.py to plot profit ratio vs stop loss and average trade vs stop loss for different timeframes.
- Updated main.py to integrate new charting functionality and streamline data processing without monthly splits.
- Enhanced backtesting logic in TrendDetectorSimple to include transaction costs and improved stop loss handling using 1-minute data for accuracy.
- Added functionality to write results to individual CSV files for better organization and analysis.
2025-05-17 13:07:40 +08:00
Simon Moisy
ec8b1a7cf2 Enhance main.py with optimized data loading, logging setup, and concurrent processing for backtesting. Introduce new functions for data handling and results aggregation. Update TrendDetectorSimple to support meta supertrend backtesting and improve SuperTrend calculations with caching and parallel execution. Refactor TrendDetectorMACD for better performance in trend detection. 2025-05-16 02:44:22 +08:00
Simon Moisy
7c4db08b1b Refactor main.py to remove commented-out cycle detection code and streamline trend plotting. Update TrendDetectorSimple by eliminating unnecessary logging statements for improved clarity during trend detection. 2025-05-09 15:24:10 +08:00
Simon Moisy
f316571a3c Update date filtering in main.py and enhance TrendDetectorSimple with SuperTrend calculations and improved plotting functionality. Introduce color configurations for better visualization and streamline trend analysis methods. 2025-05-09 15:17:30 +08:00
Simon Moisy
e9bfcd03eb Refactor cycle detection and trend analysis; enhance trend detection with linear regression and moving averages. Update main script for improved data handling and visualization. 2025-05-09 12:26:42 +08:00
cbc6a7493d More analysis WIP 2025-05-08 16:23:25 +08:00
e1f1e7f561 Refactor trend detection logic and update date filtering in main.py. Removed width parameter from detect_trends method and enhanced peak detection to include valleys and peaks between consecutive points. 2025-05-06 16:20:43 +08:00
Simon Moisy
0bbe308321 first trend detection WIP 2025-05-06 15:24:36 +08:00