Files
managing-apps/Documentation.md
Oda 422fecea7b Postgres (#30)
* Add postgres

* Migrate users

* Migrate geneticRequest

* Try to fix Concurrent call

* Fix asyncawait

* Fix async and concurrent

* Migrate backtests

* Add cache for user by address

* Fix backtest migration

* Fix not open connection

* Fix backtest command error

* Fix concurrent

* Fix all concurrency

* Migrate TradingRepo

* Fix scenarios

* Migrate statistic repo

* Save botbackup

* Add settings et moneymanagement

* Add bot postgres

* fix a bit more backups

* Fix bot model

* Fix loading backup

* Remove cache market for read positions

* Add workers to postgre

* Fix workers api

* Reduce get Accounts for workers

* Migrate synth to postgre

* Fix backtest saved

* Remove mongodb

* botservice decorrelation

* Fix tradingbot scope call

* fix tradingbot

* fix concurrent

* Fix scope for genetics

* Fix account over requesting

* Fix bundle backtest worker

* fix a lot of things

* fix tab backtest

* Remove optimized moneymanagement

* Add light signal to not use User and too much property

* Make money management lighter

* insert indicators to awaitable

* Migrate add strategies to await

* Refactor scenario and indicator retrieval to use asynchronous methods throughout the application

* add more async await

* Add services

* Fix and clean

* Fix bot a bit

* Fix bot and add message for cooldown

* Remove fees

* Add script to deploy db

* Update dfeeploy script

* fix script

* Add idempotent script and backup

* finish script migration

* Fix did user and agent name on start bot
2025-07-27 20:42:17 +07:00

73 lines
2.3 KiB
Markdown

# How to launch the App
## Requirements
- NET .Core framework
- PostgreSQL database
- Node.JS
- Discord server with API keys
- Alchemy Keys
# First setup
## Generate dev certificate
- ```dotnet dev-certs https -ep \.aspnet\https\aspnetapp.pfx -p password```
- ```dotnet dev-certs https --trust```
## Setup docker
- Update ```apps\src\Managing.Api\appsettings.MYNAME.json``` with your configuration settings
- Update ```apps\src\Managing.Api.Workers\appsettings.MYNAME.json``` with your configuration settings
- Then execute from the root of the project : ```.\scripts\docker-deploy-sandbox.cmd```
- At this point, only Managing.Api.Workers should be NOT running. It because we didn't create an account.
## Setup an account
- ```cd src/Managing.WebApp```
- ```npm run dev```
- Go to front-end app ```http://localhost:3000/```
- If request end up with a 500 error, you should open the url of the container and validate the certificate.
- Connect your ETH account
- Setup a username for your account
- On Account page : Create an EVM account for trading (Not necessary if you don't want to trade)
## Setup InfluxDb
- Go to http://localhost:8086/
- Then initialize InfluxDb
![InfluxDb setup](assets/img/doc-influxdb.png)
- Go to api keys
![InfluxDb Api](assets/img/doc-influxdb-apikeys-1.png)
- Create an apikey and update the ```apps\src\Managing.Api.Workers\appsettings.MYNAME.json``` file with the api key
![InfluxDb Api](assets/img/doc-influxdb-apikeys-2.png)
- Then redeploy by executing : ```.\scripts\docker-deploy-sandbox.cmd```
- Check influxdb > buckets > prices-bucket > if there is data
![Docker](assets/img/doc-docker.png)
- Verify the logs of the Workers container to see if candles are well inserted
- It may take some time to see the candles in the front-end
## Setup default strategies, scenario and money management
- Go to Managing.Api swagger ```https://localhost/index.html```
- Execute ```POST /settings```
![Api Settings](assets/img/doc-settings.png)
# Dev
## Generate Api Client
- Use [NSwag](https://github.com/RicoSuter/NSwag)
- Generate a Typescript client with Fetch template
- Deposit the file in ```Managing.WebApp\src\generated\```
- Generatet ABI
service ```Nethereum.Generator.Console generate from-abi -abi ./DataStore/DataStore.abi -o . -ns Managing.Tools```