Search by

pandu / nikaido

pwaskito611

Pandu/Nikaido — A Laravel-based framework for systematic trading and investment strategy research, backtesting, and robustness analysis.

Package info

github.com/pwaskito611/nikaido

Type:project

pkg:composer/pandu/nikaido

Statistics

Installs: 8

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

v0.4.0 2026-11-06 03:21 UTC

This package is auto-updated.

Last update: 2026-11-12 02:12:32 UTC


README

AI assistants: Read AGENTS.md for repository-specific guidance before making changes.

Nikaido is a strategy research workbench for intraday and swing ideas on CFD and spot market data. It is designed to keep users focused on strategy development: configure runs in the UI and review backtest and evaluation results in one place, reducing cognitive load from switching between research tools. Nikaido is not a live-trading platform, broker connection, or signal service. Bring your own historical data and instrument assumptions; see market support for current modeling limits.

What it offers

  • C++23 strategy and backtest engine: The native runtime executes a C++ strategy plugin, simulates intrabar events, orders, fills, costs, and capital, then persists completed results. The built-in strategy is an illustrative code example.
  • Configurable execution assumptions: Set transaction fees and holding costs, slippage, limit orders, and partial fills for backtest simulations.
  • Native evaluation: Review performance metrics, chronological clusters, stress analysis, and Monte Carlo trade-sequence analysis calculated by the C++ evaluation module.
  • Single and multi-pair runs: Configure one pair or eligible pairs in the Workbench, then track queued runs and inspect persisted results.

The primary pair and timeframe drive the built-in strategy. The current single-pair runtime receives primary candles, contract and execution configuration, and optional cash flows; related-pair, news, and fundamental datasets are not part of this runtime contract. Market-type backtests run each pair separately rather than generating synchronized multi-asset decisions. Robustness analyses explore assumptions and historical outcomes; they do not prove future profitability.

The Workbench configures backtest assumptions but does not select a strategy or edit its rules. The built-in C++ plugin runs by default; an ABI-compatible plugin can be selected for the native engine through NIKAIDO_STRATEGY_LIBRARY. Runs are initiated through the Workbench/API; nikaido-engine is the native backend process, not a separate user-facing research interface. The current strategy input does not include related-pair, News, or Fundamental datasets. Laravel features and adapters live in laravel/app/; strategy code and types live in src/. See the strategy guide and C++ engine reference.

Laravel infrastructure, web resources, tests, and framework storage live in laravel/. Composer dependencies and the primary .env file remain at the repository root.

composer install
php artisan nikaido:setup
npm --prefix laravel install
npm --prefix laravel run build
composer run dev

Administrative Artisan commands remain available from the root, for example:

php artisan test --compact

See the documentation index for installation, configuration, architecture, strategy development, and user guides.