Build a Paper Trading Workflow with Vibe Trading, Freqtrade, and NOFX
Research systematic strategies, translate explicit rules into backtests, audit results, and run simulated trades before evaluating optional live execution.
Download the complete paper trading workflow guide
Build a Paper Trading Workflow with Vibe Trading, Freqtrade, and NOFX
Use three open source repositories for strategy research, backtesting, dry runs, and optional trade execution.
What you will achieve
You will create a practical workflow that uses Vibe Trading to research a strategy, Freqtrade to backtest and dry run it, and NOFX as an optional terminal and execution layer.
Who this is for
Developers and technically confident traders who want to prototype automated strategies without building an entire trading system from scratch.
Difficulty: Intermediate
Short tutorial
Use three open source repositories for strategy research, backtesting, dry runs, and optional trade execution.
Guide: Build a Paper Trading Workflow with Freqtrade, Vibe Trading, and NOFX
Time: 60 to 90 minutes
What you will build
This tutorial combines three repositories that serve different parts of an automated trading workflow:
- Use Vibe Trading to turn a market question into testable research.
- Use Freqtrade to implement, backtest, and dry run the resulting strategy.
- Evaluate NOFX as an optional terminal and execution layer once the strategy has been validated.
Start with research and paper trading. Do not connect real funds simply because a backtest looks profitable. Historical performance can fail when exposed to live market data, fees, slippage, and changing conditions.
The repositories are:
Because installation details can change, use each repository's current README as the authority for dependencies, configuration, and supported integrations.
Understand the role of each repository
| Repository | Primary role | Best starting use |
|---|---|---|
| Vibe Trading | Research and strategy generation | Form a hypothesis, run analysis, compare strategies, and examine results |
| Freqtrade | Backtesting and automated execution | Convert a defined strategy into a backtest, then run it with simulated funds |
| NOFX | Trading terminal and execution layer | Explore built in strategies, signals, exchange connections, and optional autopilot execution |
A sensible initial architecture is:
Market question
↓
Vibe Trading research
↓
Explicit strategy rules
↓
Freqtrade backtest
↓
Out-of-sample evaluation
↓
Freqtrade dry run
↓
Optional live execution through the selected engine1. Install each repository safely
Clone or download one repository at a time and follow its README. If you use a coding assistant, have it inspect the documentation before executing commands. This prevents it from guessing outdated installation steps.
Use this prompt inside the directory where you want to create the project:
You are helping me configure an open source trading project. Repository: [PASTE REPOSITORY URL] First inspect the current README, installation files, example configuration, and dependency files. Do not guess commands or configuration fields. Then: 1. Summarize what the project does. 2. List its system and software requirements. 3. Produce an installation plan for my operating system. 4. Identify which features support backtesting, dry runs, paper trading, or live execution. 5. Identify every step that would require exchange credentials or real funds. 6. Default to simulation and prevent live trading unless I explicitly approve it. 7. Show each command before running it. 8. Stop and explain any error instead of applying an unrelated workaround. 9. Confirm how to start and stop the application. 10. Confirm where configuration, strategy files, logs, and results are stored. Do not ask me to paste secret API keys into this chat. Use the credential method recommended by the repository documentation.
Repeat this process for all three repositories. Keep them in separate directories so their environments and dependencies do not conflict.
2. Turn a market idea into research with Vibe Trading
Vibe Trading is most useful at the beginning of the workflow. It can turn a market question into runnable research, compare strategies, review trades, and present metrics such as returns and drawdown.
The transcript demonstrates a momentum study across Nvidia, Meta, Apple, Microsoft, and Amazon. Use the following version to request a more complete research report:
Research a momentum strategy across Nvidia, Meta, Apple, Microsoft, and Amazon using the last two years of available data. Requirements: 1. State the momentum hypothesis in plain English. 2. Define the entry, exit, ranking, and rebalancing rules precisely. 3. Include realistic trading fees supported by the available backtesting system. 4. Separate strategy development from out-of-sample evaluation. 5. Compare the strategy with an appropriate buy and hold benchmark. 6. Report total return, maximum drawdown, trade count, win rate, and turnover when available. 7. Generate an equity curve and drawdown chart. 8. Show trades, positions, and performance attribution. 9. Identify assumptions that could make the result unrealistic. 10. Do not place live orders. If paper trading is configured, prepare the strategy for paper trading with a simulated account value of $100,000. Before placing simulated orders, show the proposed orders and explain why each one satisfies the strategy rules.
If you want to investigate the project's alpha library, use this comparison prompt:
Review the strategies available in the alpha library and identify candidates suitable for a systematic trading bot. Benchmark the candidates consistently. Prioritize strategies that: 1. Have explicit and implementable rules. 2. Pass an out-of-sample evaluation. 3. Retain an advantage after fees. 4. Avoid excessive turnover. 5. Do not depend on future information. For the strongest candidate, provide: 1. The exact signal definition. 2. Required market data. 3. Entry and exit conditions. 4. Position sizing assumptions. 5. Backtest and out-of-sample results. 6. Drawdown and turnover. 7. The main reasons the apparent advantage might disappear in live trading. Do not describe a strategy as reliable solely because it beats the benchmark in one backtest.
Your goal is not to obtain a vague recommendation. You need explicit rules that another engine can implement without interpretation.
3. Convert the research into a Freqtrade strategy
Freqtrade acts as the backtesting and execution engine. Give your coding assistant the Vibe Trading research report and ask it to create a compatible strategy for the installed Freqtrade version.
I have installed Freqtrade using its current repository documentation. Convert the research report below into a Freqtrade strategy that is compatible with my installed version. Research report: [PASTE THE VIBE TRADING REPORT] Implementation requirements: 1. Inspect the installed Freqtrade version and its strategy examples before writing code. 2. Translate every entry and exit condition explicitly. 3. Do not invent missing strategy rules. Ask me to resolve ambiguities. 4. Keep position sizing and risk settings conservative for testing. 5. Configure a backtest before configuring a dry run. 6. Include fees when supported by the documented backtesting command. 7. Explain the required market, pair list, timeframe, and historical data. 8. Show the complete strategy file and where it should be saved. 9. Show the documented commands needed to download data and run the backtest. 10. Do not enable live trading or request exchange credentials.
The transcript uses a Bitcoin and Ethereum breakout strategy as its example. Treat that only as an implementation demonstration, not as a recommendation.
4. Evaluate the backtest before starting a dry run
A large historical return is not enough. Review the backtest using this checklist:
- The entry and exit rules match the original hypothesis.
- Fees are included where supported.
- The strategy has enough trades to make the result meaningful.
- Performance is not dependent on one exceptional trade.
- Maximum drawdown is understood.
- Results are compared with a relevant benchmark.
- An out-of-sample period was not used to design the strategy.
- Position sizing does not create unrealistic exposure.
- The strategy does not use future data.
- The equity curve, trade list, and losing periods have been inspected.
Use this prompt to review the output:
Audit this Freqtrade backtest without changing the strategy yet. Backtest output: [PASTE RESULTS] Analyze: 1. Total return and maximum drawdown. 2. Trade count and concentration of profits. 3. Performance relative to the benchmark. 4. Exposure, turnover, and fee sensitivity. 5. Evidence of overfitting or future data leakage. 6. Whether the out-of-sample result supports further testing. 7. The three largest risks not visible in the headline return. Conclude with one of these decisions: A. Reject the strategy. B. Revise and backtest again. C. Move to a dry run with simulated funds. Do not recommend live trading based only on this backtest.
5. Run Freqtrade in dry run mode
Once the backtest passes your review, configure a dry run. This uses live market data while keeping execution simulated.
Configure this Freqtrade strategy for a dry run using the current official documentation and my installed version. Requirements: 1. Keep live trading disabled. 2. Use simulated funds only. 3. Confirm the selected exchange, trading pairs, timeframe, and starting balance. 4. Confirm all risk and position sizing settings. 5. Start the web interface if it is supported by this installation. 6. Show me how to inspect open trades, completed trades, entries, exits, performance, and logs. 7. Show me how to stop the bot safely. 8. Do not add real exchange credentials.
Freqtrade can also be controlled through its configured interfaces. The transcript highlights these Telegram commands:
| Command | Purpose |
|---|---|
/performance | View bot performance |
/start | Start the configured bot |
/stop | Stop the bot |
Verify the current Freqtrade documentation and your Telegram configuration before relying on any command.
A dry run should remain active long enough to encounter different market conditions. Compare its behavior with the backtest, paying particular attention to signal frequency, timing, drawdowns, and differences caused by live data.
6. Keep the bot available while it runs
A locally running Python process stops when the computer shuts down, sleeps, loses connectivity, or closes the process. Continuous operation therefore requires an always available computer or hosted server.
Before leaving a dry run unattended, confirm:
- The machine will remain powered on.
- The trading process remains active.
- Logs are being written and can be inspected.
- You know how to stop the bot.
- The dashboard does not expose sensitive controls publicly.
- The bot is still using simulated funds.
Do not move directly from a short local test to real funds merely because the software remained online.
7. Evaluate NOFX as an optional execution layer
NOFX is presented as an AI trading terminal that combines strategy tools, signals, market views, risk parameters, exchange connections, and execution. The walkthrough describes an autopilot option associated with Hyperliquid and strategy deployment through its interface.
This part of the workflow deserves extra caution because the transcript notes that the demonstrated NOFX path can involve live execution. Inspect the current repository before funding a wallet or connecting an exchange.
Use this prompt after installation:
Inspect this NOFX installation and explain its execution model using only the current repository documentation and configuration files. Before changing anything, identify: 1. Which features are research only. 2. Which features can submit live orders. 3. Whether a paper or simulation mode is available. 4. Which exchanges are currently supported. 5. Whether autopilot requires Hyperliquid. 6. Where risk limits and strategy parameters are configured. 7. What information is logged for each trading decision. 8. What process or service executes the strategy. 9. How to stop execution safely. 10. Every action that can place funds at risk. Do not connect an exchange, fund a wallet, enable autopilot, or submit an order. Produce a configuration review and safety checklist only.
If NOFX does not provide a suitable simulation mode for your intended setup, continue validating the strategy through Vibe Trading and Freqtrade instead.
8. Use a strict launch gate
Before considering any real execution, require all of the following:
- The strategy has precise, reproducible rules.
- The backtest includes applicable fees.
- The strategy has been evaluated out of sample.
- The dry run behaved consistently with the research.
- Drawdown and position sizing are acceptable to you.
- Exchange permissions and execution behavior are understood.
- You can monitor, stop, and audit the bot.
- The machine or service can remain available while the bot runs.
- No secret credentials were exposed in chat, source code, or logs.
- You understand that successful historical and paper results do not guarantee profitable live performance.
The most practical division of labor is to use Vibe Trading for research, Freqtrade for backtesting and dry runs, and NOFX only when its execution model matches your requirements and risk tolerance.