# NT8 SDK - Quick Start Guide **Get trading in 10 minutes!** 🚀 --- ## 1. Clone & Build (2 minutes) ```bash # Clone repository git clone cd nt8-sdk # Build dotnet build --configuration Release # Verify .\verify-build.bat ``` **Expected:** ✅ All checks passed! --- ## 2. Deploy to NinjaTrader (3 minutes) ### Copy SDK DLLs ```powershell # Set paths $sdk = "C:\dev\nt8-sdk\src\NT8.Core\bin\Release\net48" $nt8 = "$env:USERPROFILE\Documents\NinjaTrader 8\bin\Custom" # Copy files Copy-Item "$sdk\NT8.Core.dll" $nt8 -Force Copy-Item "$sdk\Microsoft.Extensions.*.dll" $nt8 -Force ``` ### Copy Strategy Wrapper ```powershell # Copy strategy $wrapper = "C:\dev\nt8-sdk\src\NT8.Adapters\Wrappers\SimpleORBNT8Wrapper.cs" $strategies = "$env:USERPROFILE\Documents\NinjaTrader 8\bin\Custom\Strategies" Copy-Item $wrapper $strategies -Force ``` --- ## 3. Compile in NT8 (2 minutes) 1. Open NinjaTrader 8 2. Press **F5** (NinjaScript Editor) 3. Press **F5** again (Compile) 4. Wait for "Compilation Successful" --- ## 4. Create Strategy (3 minutes) 1. **New** → **Strategy** 2. Select **SimpleORBNT8** 3. Configure: ``` Symbol: ES 03-26 Data Series: 5 Minute Parameters: - Stop Ticks: 8 - Target Ticks: 16 - Daily Loss Limit: $1000 - Risk Per Trade: $200 ``` 4. Click **OK** --- ## 5. Enable on Chart (1 minute) 1. Open 5-minute ES chart 2. Right-click → **Strategies** 3. Select **SimpleORBNT8** 4. Check **Enabled** 5. Click **OK** --- ## 🎉 Done! Strategy Running **Watch for:** - Strategy loads without errors - Opening range calculated at 9:45 AM - Breakout orders submitted - Risk controls active --- ## Next Steps ### Learn More - Read [README.md](README.md) for full documentation - See [API_REFERENCE.md](API_REFERENCE.md) for API details - Review [ARCHITECTURE.md](ARCHITECTURE.md) for design ### Build Your Own Strategy ```csharp public class MyStrategy : IStrategy { public StrategyIntent? OnBar(BarData bar, StrategyContext context) { // Your logic here if (ShouldBuy(bar)) { return new StrategyIntent( Symbol: bar.Symbol, Side: OrderSide.Buy, EntryType: OrderType.Market, LimitPrice: null, StopTicks: 8, TargetTicks: 16, Confidence: 0.75, Reason: "Your reason", Metadata: new() ); } return null; } } ``` ### Customize Risk ```csharp var riskConfig = new RiskConfig( DailyLossLimit: 1000, // Max daily loss MaxTradeRisk: 200, // Max per-trade risk MaxOpenPositions: 3, // Max concurrent positions EmergencyFlattenEnabled: true ); ``` ### Optimize Position Sizing ```csharp var sizingConfig = new SizingConfig( Method: SizingMethod.OptimalF, // Use Optimal-f MinContracts: 1, MaxContracts: 5, RiskPerTrade: 200, MethodParameters: new() { ["historicalTrades"] = GetTradeHistory() } ); ``` --- ## Troubleshooting ### "Could not find NT8.Core.dll" ➜ Copy DLL to NinjaTrader Custom folder ### "Compilation failed" ➜ Check all DLLs copied, restart NT8 ### "Strategy won't enable" ➜ Check Output window for errors ### "Orders not submitting" ➜ Verify connection, check risk limits --- ## Support - **Docs:** `/docs` directory - **Examples:** `/src/NT8.Strategies/Examples/` - **Issues:** GitHub Issues --- **Happy Trading!** 📈