├── .git-blame-ignore-revs ├── .github └── workflows │ └── build.yml ├── .gitignore ├── .scalafix.conf ├── .scalafmt.conf ├── LICENSE ├── README.md ├── modules ├── core │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.conf │ │ ├── data.sql │ │ ├── drop.sql │ │ ├── logback.xml │ │ ├── migrations │ │ │ └── V1__Init.sql │ │ └── tables.sql │ │ └── scala │ │ └── tradex │ │ ├── domain │ │ ├── Application.scala │ │ ├── FlywayMigration.scala │ │ ├── QueryEngine.scala │ │ ├── TradingEngine.scala │ │ ├── config.scala │ │ ├── model │ │ │ ├── account.scala │ │ │ ├── balance.scala │ │ │ ├── execution.scala │ │ │ ├── instrument.scala │ │ │ ├── market.scala │ │ │ ├── order.scala │ │ │ ├── package.scala │ │ │ ├── trade.scala │ │ │ └── user.scala │ │ ├── repository │ │ │ ├── AccountRepository.scala │ │ │ ├── BalanceRepository.scala │ │ │ ├── ExecutionRepository.scala │ │ │ ├── InstrumentRepository.scala │ │ │ ├── OrderRepository.scala │ │ │ ├── TradeRepository.scala │ │ │ ├── UserRepository.scala │ │ │ ├── doobie │ │ │ │ ├── AccountRepositoryLive.scala │ │ │ │ ├── BalanceRepositoryLive.scala │ │ │ │ ├── CatzInterop.scala │ │ │ │ ├── ExecutionRepositoryLive.scala │ │ │ │ ├── InstrumentRepositoryLive.scala │ │ │ │ ├── OrderRepositoryLive.scala │ │ │ │ ├── TradeRepositoryLive.scala │ │ │ │ ├── UserRepositoryLive.scala │ │ │ │ ├── codecs.scala │ │ │ │ └── tradeioZ2.code-workspace │ │ │ └── inmemory │ │ │ │ ├── AccountRepositoryInMemory.scala │ │ │ │ ├── BalanceRepositoryInMemory.scala │ │ │ │ ├── ExecutionRepositoryInMemory.scala │ │ │ │ ├── InstrumentRepositoryInMemory.scala │ │ │ │ ├── OrderRepositoryInMemory.scala │ │ │ │ └── TradeRepositoryInMemory.scala │ │ └── services │ │ │ ├── accounting │ │ │ ├── AccountingService.scala │ │ │ └── AccountingServiceLive.scala │ │ │ ├── package.scala │ │ │ └── trading │ │ │ ├── TradingService.scala │ │ │ └── TradingServiceLive.scala │ │ └── package.scala ├── it │ └── src │ │ └── it │ │ ├── resources │ │ ├── application.conf │ │ └── trading │ │ │ └── fo-trades-messages.json │ │ └── scala │ │ └── tradex │ │ └── domain │ │ ├── ITSuite.scala │ │ ├── generators.scala │ │ └── services │ │ └── trading │ │ ├── FrontOfficeTradeGenerationSpec.scala │ │ └── TradingServiceSpec.scala └── tests │ └── src │ ├── main │ └── resources │ │ └── fo-trades-kafka-messages.txt │ └── test │ └── scala │ └── tradex │ └── domain │ ├── AccountRepositorySpec.scala │ ├── TradingServiceSpec.scala │ ├── TradingSuite.scala │ └── generators.scala └── project ├── Dependencies.scala ├── build.properties ├── plugins.sbt └── versions.scala /.git-blame-ignore-revs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/.git-blame-ignore-revs -------------------------------------------------------------------------------- /.github/workflows/build.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/.github/workflows/build.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/.gitignore -------------------------------------------------------------------------------- /.scalafix.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/.scalafix.conf -------------------------------------------------------------------------------- /.scalafmt.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/.scalafmt.conf -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/README.md -------------------------------------------------------------------------------- /modules/core/src/main/resources/application.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/resources/application.conf -------------------------------------------------------------------------------- /modules/core/src/main/resources/data.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/resources/data.sql -------------------------------------------------------------------------------- /modules/core/src/main/resources/drop.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/resources/drop.sql -------------------------------------------------------------------------------- /modules/core/src/main/resources/logback.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/resources/logback.xml -------------------------------------------------------------------------------- /modules/core/src/main/resources/migrations/V1__Init.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/resources/migrations/V1__Init.sql -------------------------------------------------------------------------------- /modules/core/src/main/resources/tables.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/resources/tables.sql -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/Application.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/Application.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/FlywayMigration.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/FlywayMigration.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/QueryEngine.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/QueryEngine.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/TradingEngine.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/TradingEngine.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/config.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/config.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/model/account.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/model/account.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/model/balance.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/model/balance.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/model/execution.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/model/execution.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/model/instrument.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/model/instrument.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/model/market.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/model/market.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/model/order.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/model/order.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/model/package.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/model/package.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/model/trade.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/model/trade.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/model/user.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/model/user.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/repository/AccountRepository.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/repository/AccountRepository.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/repository/BalanceRepository.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/repository/BalanceRepository.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/repository/ExecutionRepository.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/repository/ExecutionRepository.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/repository/InstrumentRepository.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/repository/InstrumentRepository.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/repository/OrderRepository.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/repository/OrderRepository.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/repository/TradeRepository.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/repository/TradeRepository.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/repository/UserRepository.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/repository/UserRepository.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/repository/doobie/AccountRepositoryLive.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/repository/doobie/AccountRepositoryLive.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/repository/doobie/BalanceRepositoryLive.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/repository/doobie/BalanceRepositoryLive.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/repository/doobie/CatzInterop.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/repository/doobie/CatzInterop.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/repository/doobie/ExecutionRepositoryLive.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/repository/doobie/ExecutionRepositoryLive.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/repository/doobie/InstrumentRepositoryLive.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/repository/doobie/InstrumentRepositoryLive.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/repository/doobie/OrderRepositoryLive.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/repository/doobie/OrderRepositoryLive.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/repository/doobie/TradeRepositoryLive.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/repository/doobie/TradeRepositoryLive.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/repository/doobie/UserRepositoryLive.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/repository/doobie/UserRepositoryLive.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/repository/doobie/codecs.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/repository/doobie/codecs.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/repository/doobie/tradeioZ2.code-workspace: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/repository/doobie/tradeioZ2.code-workspace -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/repository/inmemory/AccountRepositoryInMemory.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/repository/inmemory/AccountRepositoryInMemory.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/repository/inmemory/BalanceRepositoryInMemory.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/repository/inmemory/BalanceRepositoryInMemory.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/repository/inmemory/ExecutionRepositoryInMemory.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/repository/inmemory/ExecutionRepositoryInMemory.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/repository/inmemory/InstrumentRepositoryInMemory.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/repository/inmemory/InstrumentRepositoryInMemory.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/repository/inmemory/OrderRepositoryInMemory.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/repository/inmemory/OrderRepositoryInMemory.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/repository/inmemory/TradeRepositoryInMemory.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/repository/inmemory/TradeRepositoryInMemory.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/services/accounting/AccountingService.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/services/accounting/AccountingService.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/services/accounting/AccountingServiceLive.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/services/accounting/AccountingServiceLive.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/services/package.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/services/package.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/services/trading/TradingService.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/services/trading/TradingService.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/domain/services/trading/TradingServiceLive.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/domain/services/trading/TradingServiceLive.scala -------------------------------------------------------------------------------- /modules/core/src/main/scala/tradex/package.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/core/src/main/scala/tradex/package.scala -------------------------------------------------------------------------------- /modules/it/src/it/resources/application.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/it/src/it/resources/application.conf -------------------------------------------------------------------------------- /modules/it/src/it/resources/trading/fo-trades-messages.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/it/src/it/resources/trading/fo-trades-messages.json -------------------------------------------------------------------------------- /modules/it/src/it/scala/tradex/domain/ITSuite.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/it/src/it/scala/tradex/domain/ITSuite.scala -------------------------------------------------------------------------------- /modules/it/src/it/scala/tradex/domain/generators.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/it/src/it/scala/tradex/domain/generators.scala -------------------------------------------------------------------------------- /modules/it/src/it/scala/tradex/domain/services/trading/FrontOfficeTradeGenerationSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/it/src/it/scala/tradex/domain/services/trading/FrontOfficeTradeGenerationSpec.scala -------------------------------------------------------------------------------- /modules/it/src/it/scala/tradex/domain/services/trading/TradingServiceSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/it/src/it/scala/tradex/domain/services/trading/TradingServiceSpec.scala -------------------------------------------------------------------------------- /modules/tests/src/main/resources/fo-trades-kafka-messages.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/tests/src/main/resources/fo-trades-kafka-messages.txt -------------------------------------------------------------------------------- /modules/tests/src/test/scala/tradex/domain/AccountRepositorySpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/tests/src/test/scala/tradex/domain/AccountRepositorySpec.scala -------------------------------------------------------------------------------- /modules/tests/src/test/scala/tradex/domain/TradingServiceSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/tests/src/test/scala/tradex/domain/TradingServiceSpec.scala -------------------------------------------------------------------------------- /modules/tests/src/test/scala/tradex/domain/TradingSuite.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/tests/src/test/scala/tradex/domain/TradingSuite.scala -------------------------------------------------------------------------------- /modules/tests/src/test/scala/tradex/domain/generators.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/modules/tests/src/test/scala/tradex/domain/generators.scala -------------------------------------------------------------------------------- /project/Dependencies.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/project/Dependencies.scala -------------------------------------------------------------------------------- /project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.7.1 2 | -------------------------------------------------------------------------------- /project/plugins.sbt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/project/plugins.sbt -------------------------------------------------------------------------------- /project/versions.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/debasishg/tradeioZ2/HEAD/project/versions.scala --------------------------------------------------------------------------------