23bb431d425a42a4c516f4ff16f058eb422f6d36
NT8 SDK Repository
Project Status: ✅ Phase 0 Complete - Ready for Phase 1
This repository contains a sophisticated institutional trading SDK designed for NinjaTrader 8 integration. The SDK implements a risk-first architecture with advanced position sizing and deterministic behavior.
🚨 Important: .NET Framework 4.8 Compatibility
This project targets NinjaTrader 8 and MUST maintain compatibility with:
- .NET Framework 4.8 (NOT .NET Core/.NET 5+)
- C# 5.0 language features only
- Traditional class syntax (NO modern C# features)
Quick Start
Prerequisites
- .NET Framework 4.8
- Visual Studio 2019/2022 or VSCode
- NinjaTrader 8 (for integration)
Build Verification
# Clone and verify build
git clone <repository-url>
cd nt8-sdk
.\verify-build.bat
Should output: ✅ All checks passed!
Architecture Overview
Core Components
- Risk Management: Tier 1 controls (daily loss limits, per-trade limits, position limits)
- Position Sizing: Fixed contracts and fixed dollar risk methods
- Strategy Framework: Thin plugin architecture for trading strategies
- Logging System: Structured logging compatible with .NET Framework 4.8
Design Principles
- Risk-First: All trades pass through risk validation before execution
- Deterministic: Identical inputs produce identical outputs
- Modular: Strategies are plugins, SDK handles infrastructure
- Observable: Comprehensive logging with correlation IDs
Project Structure
nt8-sdk/
├── src/
│ ├── NT8.Core/ # Core trading framework
│ ├── NT8.Adapters/ # NinjaTrader 8 integration (Phase 1)
│ ├── NT8.Strategies/ # Example strategies (Phase 1)
│ └── NT8.Contracts/ # Data contracts (Phase 1)
├── tests/
│ ├── NT8.Core.Tests/ # Unit tests
│ ├── NT8.Integration.Tests/
│ └── NT8.Performance.Tests/
└── docs/ # Documentation
Development Guidelines
For AI Agents
MUST READ before making any changes:
AI_DEVELOPMENT_GUIDELINES.md- Compatibility requirementsCODE_STYLE_GUIDE.md- Required code patternsCODE_REVIEW_CHECKLIST.md- Pre-commit verification
For Human Developers
- Review the guidelines above
- Run
.\verify-build.batbefore committing - Follow existing code patterns in the repository
- Maintain .NET Framework 4.8 compatibility
Phase Status
✅ Phase 0 (Complete)
- Repository structure and build system
- Core interfaces and models
- Basic risk management (Tier 1)
- Basic position sizing
- Test framework setup
🔄 Phase 1 (In Progress)
- NinjaTrader 8 integration adapters
- Market data provider implementation
- Order management system
- Enhanced risk controls (Tier 2)
📋 Future Phases
- Advanced risk controls (Phases 2-3)
- Confluence scoring system (Phase 4)
- Analytics and optimization (Phase 5)
- Production hardening (Phase 6)
Key Features
Risk Management
// All trades go through risk validation
var riskDecision = riskManager.ValidateOrder(intent, context, config);
if (!riskDecision.Allow)
{
// Trade rejected - log reason and stop
return;
}
Position Sizing
// Intelligent position sizing with risk controls
var sizingResult = positionSizer.CalculateSize(intent, context, config);
var contracts = sizingResult.Contracts; // Final contract count
Strategy Framework
// Strategies are thin plugins - SDK handles everything else
public class MyStrategy : IStrategy
{
public StrategyIntent OnBar(BarData bar, StrategyContext context)
{
// Strategy logic here - return trading intent
return new StrategyIntent(/* parameters */);
}
}
Testing
Run All Tests
dotnet test --configuration Release
Test Coverage
- Core components: >90% coverage
- Risk scenarios: Comprehensive test suite
- Integration tests: End-to-end validation
Building
Development Build
dotnet build --configuration Debug
Release Build
dotnet build --configuration Release
Full Verification
.\verify-build.bat
Contributing
Code Changes
- Read development guidelines (see links above)
- Follow existing patterns
- Add unit tests
- Run verification script
- Submit for review
Architecture Changes
All architecture changes must:
- Maintain risk-first design
- Preserve deterministic behavior
- Support NinjaTrader 8 compatibility
- Include comprehensive tests
License
[Specify your license here]
Support
For technical issues:
- Check build verification:
.\verify-build.bat - Review development guidelines
- Examine existing code patterns
- Create issue with full error details
Remember: This SDK prioritizes institutional-grade risk management and NinjaTrader 8 compatibility above all else. All development must maintain these core principles.
Description
Languages
C#
99.7%
Batchfile
0.3%