Add ORB confluence factors (NR4/NR7, gap alignment, breakout volume, prior close) + session file logger
Some checks failed
Build and Test / build (push) Has been cancelled

This commit is contained in:
2026-03-19 12:16:39 -04:00
parent ee4da1b607
commit 498f298975
11 changed files with 1569 additions and 76 deletions

View File

@@ -15,11 +15,20 @@ namespace NT8.Integration.Tests
[TestClass]
public class NT8OrderAdapterIntegrationTests
{
private class FakeBridge : INT8ExecutionBridge
{
public void EnterLongManaged(int q, string n, int s, int t, double ts) { }
public void EnterShortManaged(int q, string n, int s, int t, double ts) { }
public void ExitLongManaged(string n) { }
public void ExitShortManaged(string n) { }
public void FlattenAll() { }
}
[TestMethod]
public void Initialize_NullRiskManager_ThrowsArgumentNullException()
{
// Arrange
var adapter = new NT8OrderAdapter();
var adapter = new NT8OrderAdapter(new FakeBridge());
var sizer = new TestPositionSizer(1);
// Act / Assert
@@ -31,7 +40,7 @@ namespace NT8.Integration.Tests
public void Initialize_NullPositionSizer_ThrowsArgumentNullException()
{
// Arrange
var adapter = new NT8OrderAdapter();
var adapter = new NT8OrderAdapter(new FakeBridge());
var risk = new TestRiskManager(true);
// Act / Assert
@@ -43,7 +52,7 @@ namespace NT8.Integration.Tests
public void ExecuteIntent_NotInitialized_ThrowsInvalidOperationException()
{
// Arrange
var adapter = new NT8OrderAdapter();
var adapter = new NT8OrderAdapter(new FakeBridge());
// Act / Assert
Assert.ThrowsException<InvalidOperationException>(
@@ -54,7 +63,7 @@ namespace NT8.Integration.Tests
public void ExecuteIntent_RiskRejected_DoesNotRecordExecution()
{
// Arrange
var adapter = new NT8OrderAdapter();
var adapter = new NT8OrderAdapter(new FakeBridge());
var risk = new TestRiskManager(false);
var sizer = new TestPositionSizer(3);
adapter.Initialize(risk, sizer);
@@ -71,7 +80,7 @@ namespace NT8.Integration.Tests
public void ExecuteIntent_AllowedAndSized_RecordsExecution()
{
// Arrange
var adapter = new NT8OrderAdapter();
var adapter = new NT8OrderAdapter(new FakeBridge());
var risk = new TestRiskManager(true);
var sizer = new TestPositionSizer(4);
adapter.Initialize(risk, sizer);
@@ -94,7 +103,7 @@ namespace NT8.Integration.Tests
public void GetExecutionHistory_ReturnsCopy_NotMutableInternalReference()
{
// Arrange
var adapter = new NT8OrderAdapter();
var adapter = new NT8OrderAdapter(new FakeBridge());
var risk = new TestRiskManager(true);
var sizer = new TestPositionSizer(2);
adapter.Initialize(risk, sizer);
@@ -113,7 +122,7 @@ namespace NT8.Integration.Tests
public void OnOrderUpdate_EmptyOrderId_ThrowsArgumentException()
{
// Arrange
var adapter = new NT8OrderAdapter();
var adapter = new NT8OrderAdapter(new FakeBridge());
// Act / Assert
Assert.ThrowsException<ArgumentException>(
@@ -124,7 +133,7 @@ namespace NT8.Integration.Tests
public void OnExecutionUpdate_EmptyExecutionId_ThrowsArgumentException()
{
// Arrange
var adapter = new NT8OrderAdapter();
var adapter = new NT8OrderAdapter(new FakeBridge());
// Act / Assert
Assert.ThrowsException<ArgumentException>(
@@ -135,7 +144,7 @@ namespace NT8.Integration.Tests
public void OnExecutionUpdate_EmptyOrderId_ThrowsArgumentException()
{
// Arrange
var adapter = new NT8OrderAdapter();
var adapter = new NT8OrderAdapter(new FakeBridge());
// Act / Assert
Assert.ThrowsException<ArgumentException>(