ToDo
- нативные контракты для маркет даты
- методы подписки в контроллере на другие типы МД
- API client (Refit?)
- ! OrderProcessing - от выставления заявки до движения в позиции
- Интеграция с позициями
- Ручной трейдинг (2 кнопки)
- Дашборд по МД и по позициям (Redis?)
Kafka https://docs.confluent.io/platform/current/clients/consumer.html https://docs.confluent.io/platform/current/clients/producer.html https://docs.confluent.io/platform/current/clients/confluent-kafka-dotnet/_site/api/Confluent.Kafka.ConsumerConfig.html https://github.com/confluentinc/confluent-kafka-dotnet https://github.com/edenhill/librdkafka/blob/master/INTRODUCTION.md https://medium.com/streamthoughts/understanding-kafka-partition-assignment-strategies-and-how-to-write-your-own-custom-assignor-ebeda1fc06f3
ToDo
- https://www.youtube.com/watch?v=XA_3CZmD9y0
- https://blog.jetbrains.com/dotnet/2023/05/09/dotnet-background-services/
- https://habr.com/ru/articles/658847/
- https://learn.microsoft.com/en-us/aspnet/core/fundamentals/host/hosted-services?view=aspnetcore-8.0&tabs=visual-studio
- https://wildermuth.com/2022/05/04/using-background-services-in-asp-net-core/
Done REST API Controllers
- Accounts
- Orders
- Sandbox
- Instruments
ToDo
-
Check Aspire - https://learn.microsoft.com/en-us/dotnet/aspire/messaging/kafka-component?tabs=dotnet-cli
-
Http Resilience - https://learn.microsoft.com/en-us/dotnet/core/resilience/http-resilience?tabs=dotnet-cli
-
Изолировать акаунт через конфиг в прокси
-
Конфиги для кафки
-
Options pattern - https://antondevtips.com/blog/master-configuration-in-asp-net-core-with-the-options-pattern
-
Перейти на docker-compose
Kafka
-
[x]Поднять инфру
-
Примеры кода для продюсера и консьюмера
-
Тесты
-
Конфиги
-
Обработка эксепшенов
-
Продюсеры -- OrderTrades -- OrderExecution -- Market Data Topics: OrderBooks, Candles, Trades, LastPrice
Контроллеры
- подписка на стримы MarketData
- выпилить акаунт и заменить конфигом
ToDo
- Market Data Stream Management
- Positions
Kafka producers
- MyTrades Topic
- Order Status(?)
- Market Data Topics: OrderBooks, Candles, Trades, LastPrice
Client API
- Contracts
- Messages
- Refit Client? (how to replace?)
Positions Service
- Order Management (Post, Check Status)
- Portfolio-account binding
- Sandbox flag
- Signal Consumer + Risk Management
- Portolio Changed Producer
- Pnl Percent
- Reports
Market Data Service
- Market Data Hot DB (Redis?)
- Market Data Cold DB (pgSql)
- Market Data Consumers
- Instruments (Static Data)
- Basic Indicators?
System
- Internal Timer (Clock)?
Done
- basic integration tests
- stream services
Done
- Project started