Aug 2024 - Dec 2024
GenAI Project - Genetic Algorithm Optimization Engine
Optimization engine for evolving trading strategies using genetic algorithms.
This project implements a genetic algorithm framework that evolves candidate strategies using selection, crossover, mutation, and elitism. It supports training/testing workflows, configurable experiments, JSON summaries, and fitness progression plots.
Conceptual Visual
Evolution Loop
Initial Population
Fitness Evaluation
Selection
Crossover
Mutation
Best Strategy
Highlight
Genetic Algorithm
Highlight
Strategy Optimization
Highlight
CLI Configuration
Highlight
Fitness Visualizations
Executive Summary
This project implements a genetic algorithm framework that evolves candidate strategies using selection, crossover, mutation, and elitism. It supports training/testing workflows, configurable experiments, JSON summaries, and fitness progression plots.
Problem Statement
Optimization problems often require exploring large solution spaces. This project applies evolutionary search to discover candidate trading rules and compare strategy behavior across generations.
What I Built
Configurable CLI
JSON experiment summaries
Fitness plots
Train/test split workflow
How It Works
A conceptual workflow showing how the project moves from input to processing and output.
Step 1
Historical Data
Step 2
Candidate Strategies
Step 3
Fitness Scoring
Step 4
Genetic Operators
Step 5
Best Strategy
Step 6
Test Evaluation
Architecture / System Design
A simplified system view of the major project components and how responsibilities connect.
Step 1
CLI Config
Step 2
GA Engine
Step 3
Fitness Function
Step 4
Experiment Runner
Step 5
JSON Summary + Plots
Technical Implementation
Algorithm
- Selection
- Crossover
- Mutation
- Elitism
Experimentation
- Configurable CLI
- Training/testing workflows
- Repeatable parameter tuning
Data + Output
- Historical financial data
- JSON summaries
- Fitness progression plots
Tools
- Python
- NumPy
- Matplotlib
Visual Showcase
Conceptual preview panels for the project experience. These are intentional placeholders, not fake screenshots.
Fitness Curve Placeholder
Conceptual visualization panel for optimization progress over generations.
Strategy Evolution Flow
Shows candidate strategy evolution from population to selected result.
Experiment Config Panel
Configuration surface for population size, mutation rate, and generation count.
JSON Output Preview
Structured experiment summary concept for result comparison.
Experiment Config Preview
{
"population_size": 100,
"mutation_rate": 0.05,
"generations": 50,
"best_fitness": "..."
}Challenges & Solutions
Challenge
Large strategy spaces are difficult to search manually.
Solution
Used a genetic algorithm loop to evolve candidate strategies through repeated scoring and variation.
Challenge
Optimization experiments need visibility into parameter choices and outcomes.
Solution
Added CLI configuration, JSON summaries, and fitness progression visualizations.
Results / Impact
Demonstrates practical software engineering through modular structure, readable workflows, and clear technical documentation.
Shows ability to convert course and research concepts into working systems with real implementation constraints.