Gmx v2 - Funding rates (#6)

* Setup GMX v2

* Add get markets

* Map token with service

* Add get market info data

* Add get markets

* Add get market token prices

* Get markets infos multicall

* Try call datastore

* Add some tests to figure out why datastore call dont work

* Update funding rates

* clean
This commit is contained in:
Oda
2024-08-17 06:50:18 +07:00
committed by GitHub
parent b4087753c7
commit 68aa7fff5d
75 changed files with 8979 additions and 608 deletions

View File

@@ -94,9 +94,8 @@ public class StatisticService : IStatisticService
{
// Get fundingRate from database
var previousFundingRate = await GetFundingRates();
// var fundingRates = await .GetFundingRates();
var newFundingRates = await _evmManager.GetFundingRates();
var newFundingRates = await _tradaoService.GetFundingRates();
var topRates = newFundingRates
.Where(fr => fr.Direction == TradeDirection.Short && fr.Rate > 0)
.OrderByDescending(fr => fr.Rate)
@@ -132,7 +131,7 @@ public class StatisticService : IStatisticService
else if (previousFundingRate.Any(tr => SameFundingRate(tr, newRate)))
{
var oldRate = previousFundingRate.FirstOrDefault(tr => SameFundingRate(tr, newRate));
if (oldRate != null && Math.Abs(oldRate.Rate - newRate.Rate) > 1m)
if (oldRate != null && Math.Abs(oldRate.Rate - newRate.Rate) > 5m)
{
await _messengerService.SendFundingRateUpdate(oldRate, newRate);
_statisticRepository.UpdateFundingRate(oldRate, newRate);