Skip to content
View TPTBusiness's full-sized avatar

Block or report TPTBusiness

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
TPTBusiness/README.md

Trading Prediction Technology Β· TPTBusiness

Solo developer building AI-powered trading systems β€” from autonomous factor discovery to local LLM inference.
Three years in, still shipping. Supporter of open-source software and the communities that build it.


πŸš€ Main Project β€” Predix

Predix is an autonomous AI agent for quantitative EUR/USD forex trading. It automates the full research and development cycle β€” from factor discovery to backtesting β€” using a multi-agent LLM framework on 1-minute data.

What makes it different:

  • 🧠 Autonomous factor evolution β€” the agent proposes, codes, and validates its own alpha signals
  • πŸ›‘οΈ Built-in risk management β€” drawdown protection, cooldown periods, stoploss clustering detection
  • πŸ”„ Walk-forward validation β€” avoids overfitting across 2020–2026 EUR/USD data
  • πŸ–₯️ Real-time dashboard β€” Streamlit UI for monitoring factor performance and model evolution
  • πŸ”’ 134 integration tests β€” every commit is checked before it lands

Data Flow:

                     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                     β”‚  Qlib Data (1-min EUR/USD)       β”‚
                     β”‚  2020–2026 Β· 96 bars/day         β”‚
                     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                      β”‚
                                      β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                  R&D LOOP (rdagent fin_quant)                   β”‚
β”‚                                                                 β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”β”‚
β”‚  β”‚ PROPOSE │─▢│  CODING  │─▢│ RUNNING  │─▢│ FEEDBACK │─▢│ RECβ”‚β”‚
β”‚  β”‚  (LLM)  β”‚  β”‚ (CoSTEER)β”‚  β”‚ (Docker) β”‚  β”‚  (LLM)   β”‚  β”‚    β”‚β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”˜β”‚
β”‚  Bandit sel.  LLM evolves   Qlib backtest  IC/Sharpe/   Pickle β”‚
β”‚  factor|model factor.py     in Docker      DD metrics   sessionβ”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
               β”‚                             β”‚
       β”Œβ”€β”€β”€β”€β”€β”€β”€β”˜                             └───────┐
       β–Ό                                             β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”                       β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚  FACTOR TRACK   β”‚                       β”‚   MODEL TRACK   β”‚
β”‚                 β”‚                       β”‚                 β”‚
β”‚  FactorCoSTEER  β”‚                       β”‚  ModelCoSTEER   β”‚
β”‚  FactorRunner   β”‚                       β”‚  ModelRunner    β”‚
β”‚  FactorFeedback β”‚                       β”‚  ModelFeedback  β”‚
β”‚                 β”‚                       β”‚                 β”‚
β”‚  β†’ result.h5    β”‚                       β”‚  β†’ PyTorch predsβ”‚
β”‚  IC / Sharpe    β”‚                       β”‚  + mlflow logs  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                       β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
               β”‚                                     β”‚
               β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                             β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                 STRATEGY GENERATION PIPELINE                    β”‚
β”‚                                                                 β”‚
β”‚  Load top factors ──▢ LLM strategy code ──▢ OHLCV backtest    β”‚
β”‚                                                                 β”‚
β”‚  Optuna: Stage 1 (10) β†’ Stage 2 (15) β†’ Stage 3 (5) trials     β”‚
β”‚  Accept: Sharpe β‰₯ 1.5 Β· DD β‰₯ βˆ’0.30 Β· WR β‰₯ 0.40               β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                             β”‚
                             β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚              PORTFOLIO OPTIMIZATION                             β”‚
β”‚              Mean-Variance / Risk Parity / Black-Litterman     β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                             β”‚
                             β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚              LIVE TRADING (closed-source)                       β”‚
β”‚              ftmo_live_trader.py Β· FTMO signals                 β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

GitHub License Last Commit Stars


🧠 What I build

Autonomous Trading Agents β€” Multi-agent LLM frameworks that discover, evolve, and validate trading strategies end-to-end
Local LLM Integration β€” Running AI systems fully offline with llama.cpp (no cloud dependency)
Open-Source Tools β€” Pine Script strategies and Python frameworks for the trading community
Full Trading Pipelines β€” From raw kline data to live execution, built and maintained independently


πŸ› οΈ Stack

Core & AI

Python PyTorch LightGBM scikit-learn LangChain

Data & Finance

pandas NumPy TA-Lib CCXT Qlib

Local LLM & Inference

llama.cpp Ollama CUDA OpenRouter

UI & Infra

Streamlit Docker Linux Pine Script


🌍 Open-Source Contributions

Project Contribution
TradingAgents ⭐ 34k Added llama.cpp local LLM support β€” run multi-agent stock analysis fully offline via .env config
OpenStock ⭐ 9.9k Updated deps, fixed Inngest v4 API, force-dynamic for auth routes β€” resolved 28 vulnerabilities, migrated Inngest v3β†’v4

πŸ“Š Activity

GitHub followers GitHub stars Predix commits/month CI Closed PRs


πŸ“¬ Contact

Premium models & collaborations β†’ tpt.requests@pm.me
Mastodon β†’ @TPTBusiness@mastodon.social


⚠️ All content is for educational purposes only. Past performance does not guarantee future results.

Pinned Loading

  1. Predix Predix Public

    Autonomous AI agent for quantitative EUR/USD forex trading β€” automates factor discovery, model evolution, and backtesting on 1-minute data using a multi-agent LLM framework.

    Python 3