Validate across three instruments, and find where order flow imbalanc… #7
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: ["**"] | |
| pull_request: | |
| workflow_dispatch: | |
| jobs: | |
| build-and-test: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-dotnet@v4 | |
| with: | |
| dotnet-version: "8.0.x" | |
| - name: Restore | |
| run: dotnet restore MarketDataSimulator.sln | |
| - name: Build | |
| run: dotnet build MarketDataSimulator.sln -c Release --no-restore | |
| - name: Test | |
| run: dotnet test Tests/Tests.csproj -c Release --no-build --verbosity normal | |
| - name: Real-data replay (20k-message NASDAQ slice) | |
| run: dotnet test Tests/Tests.csproj -c Release --no-build --filter "FullyQualifiedName~RealDataReplayTests" | |
| - name: Matching engine micro-benchmark (smoke) | |
| run: dotnet run --project Bench/Bench.csproj -c Release --no-build -- matching --sizes 1000 | |
| - name: Order book micro-benchmark (smoke) | |
| # Not a performance gate - CI runners are far too noisy for that. This only proves the | |
| # benchmark still builds and runs, so it cannot rot between measurement sessions. | |
| run: dotnet run --project Bench/Bench.csproj -c Release --no-build -- books --depths 10 | |
| - name: Feed smoke test | |
| run: ./scripts/smoke.sh |