Commit Graph

48 Commits

Author SHA1 Message Date
95e60108af Enhance Privy integration by adding getWalletIdFromAddress function to retrieve wallet IDs directly from addresses. Update callContract and related methods to utilize the new function for improved transaction handling. Modify tests to reflect changes in wallet address handling and ensure accurate position management. 2025-12-30 03:02:23 +07:00
274effc749 Update dependencies and refactor Privy integration in Web3Proxy. Replace @privy-io/server-auth with @privy-io/node, introducing authorization context handling for improved transaction security. Modify transaction methods to align with the new SDK structure, ensuring compatibility and enhanced logging for wallet operations. 2025-12-30 00:37:12 +07:00
af20a2c503 Fix futures open positions 2025-12-19 16:29:34 +07:00
e6880c9b18 Update fullstack guidelines to use 'bun' instead of 'npm' for testing; modify package.json to lock specific versions of dependencies for consistency; adjust TypeScript code for improved type handling in simulateExecuteOrder function; enhance swap-tokens test with additional parameters for better coverage. 2025-12-19 12:07:54 +07:00
65d00c0b9a Add reconcilliation for cancelled position if needed 2025-12-11 18:35:25 +07:00
292a48d108 Fix close position 2025-12-11 12:23:01 +07:00
8ff9437400 Fix a bit the spot trading 2025-12-10 23:16:46 +07:00
a2ed4edd32 Implement spot position history retrieval in SpotBot and related services
- Added CheckSpotPositionInExchangeHistory method to SpotBot for verifying closed positions against exchange history.
- Enhanced logging for Web3Proxy errors during position verification.
- Introduced GetSpotPositionHistory method in IEvmManager, IExchangeService, and IWeb3ProxyService interfaces.
- Implemented GetSpotPositionHistory in EvmManager and ExchangeService to fetch historical swap data.
- Updated GMX SDK integration to support fetching spot position history.
- Modified generated API types to include new trading type and position history structures.
2025-12-07 19:20:47 +07:00
78edd850fe Add isLiveTrading helper to fix bug 2025-12-04 23:42:09 +07:00
f816b8de50 Update fetch borkerPosition in bot + better HandleClosePosition + Add debug channel to receive all debug 2025-10-25 18:35:51 +07:00
38e6998ff3 Add test to check if backtest behavior changed 2025-10-24 19:08:10 +07:00
fc4369a008 Add start and enddate when fetching the position history 2025-10-24 18:00:23 +07:00
3f1b5f09e0 Update the gmx for the execution fees 2025-10-17 00:49:20 +07:00
bdb254809e Improve CandleStore grain deactivating 2025-10-10 22:09:30 +07:00
e4c2f8b7a5 Add monitoring on queries with sentry alert + Fix check position list in db for backtest 2025-10-10 00:15:02 +07:00
1a99224d18 Fix ROI calculation for Strategy 2025-10-08 19:37:24 +07:00
67065469a6 Fix config update + remove messages + Summary fix for not open position 2025-10-08 02:52:11 +07:00
de48e758cf Fix build 2025-10-06 01:38:02 +07:00
dac0a9641f Fetch closed position to get last pnl realized 2025-10-05 23:31:17 +07:00
7c3c0f38ec Fix autoswap 2025-09-22 00:22:39 +07:00
c2f3734021 Add Role based grain placement 2025-09-18 20:17:28 +07:00
Oda
cee3902a4d Update SDK (#35)
* Update SDK for swap

* Fix web3proxy build

* Update types

* Fix swap

* Send token test and BASE transfer

* fix cache and hook

* Fix send

* Update health check with uiFeereceiver

* Fix sdk

* Fix get positions

* Fix timeoutloop

* Fix open position

* Fix closes positions

* Review
2025-09-17 14:28:56 +07:00
271dd70ad7 Fix Swap 2025-09-15 19:57:11 +07:00
1161b71dad Add build claim methods to test for UI Fee 2025-09-04 02:46:58 +07:00
5d7f73a794 update contracts and approval logs 2025-08-27 05:08:13 +07:00
9d808cfe1a Fix few things 2025-08-27 04:32:05 +07:00
e38ad95a8b Fix convertion when getting positon 2025-08-17 00:35:41 +07:00
ab3e637ca7 Fix ETH openPosition 2025-08-16 19:12:20 +07:00
b178f15beb Add new endpoint to retrieve balance 2025-08-15 20:18:02 +07:00
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
3f34c56968 Get fees to claims 2025-06-13 14:22:38 +07:00
5188b5faec Add claim test + fix unlisted markets 2025-06-10 18:24:06 +07:00
5505dca6a0 Rollback proxy 2025-06-10 17:53:11 +07:00
9629297e77 Fix no markets 2025-06-10 13:22:09 +07:00
38656d705c Swap feature 2025-06-10 13:00:05 +07:00
894f518d2c Add get claimable uifee 2025-06-09 15:08:13 +07:00
8836c45c9d claiming uifee 2025-06-08 22:34:30 +07:00
aac28adebe Claim price impact 2025-06-05 22:13:24 +07:00
9680329e10 Get gmx price impact 2025-06-05 22:06:32 +07:00
8c6bae6d14 Claim Funding Fees 2025-06-05 21:40:48 +07:00
5703a6792d Claim funding fees 2025-06-05 21:29:53 +07:00
f41af96406 Start claiming rebate 2025-06-03 02:54:48 +07:00
ebcaff6b5b Close position 2025-05-27 10:30:32 +07:00
564a23ddec Fix json serialization + preloaded candle 2025-05-23 18:11:34 +07:00
621a5a745e Add user avatar URL 2025-05-13 11:31:03 +07:00
4b0e87d48e Fix close position 2025-05-12 13:07:43 +07:00
86692b60fa Add stats for kaigen 2025-04-24 20:33:13 +07:00
Oda
528c62a0a1 Filter everything with users (#16)
* Filter everything with users

* Fix backtests and user management

* Add cursor rules

* Fix backtest and bots

* Update configs names

* Sign until unauth

* Setup delegate

* Setup delegate and sign

* refact

* Enhance Privy signature generation with improved cryptographic methods

* Add Fastify backend

* Add Fastify backend routes for privy

* fix privy signing

* fix privy client

* Fix tests

* add gmx core

* fix merging sdk

* Fix tests

* add gmx core

* add gmx core

* add privy to boilerplate

* clean

* fix

* add fastify

* Remove Managing.Fastify submodule

* Add Managing.Fastify as regular directory instead of submodule

* Update .gitignore to exclude Managing.Fastify dist and node_modules directories

* Add token approval functionality to Privy plugin

- Introduced a new endpoint `/approve-token` for approving ERC20 tokens.
- Added `approveToken` method to the Privy plugin for handling token approvals.
- Updated `signPrivyMessage` to differentiate between message signing and token approval requests.
- Enhanced the plugin with additional schemas for input validation.
- Included new utility functions for token data retrieval and message construction.
- Updated tests to verify the new functionality and ensure proper request decoration.

* Add PrivyApproveTokenResponse model for token approval response

- Created a new class `PrivyApproveTokenResponse` to encapsulate the response structure for token approval requests.
- The class includes properties for `Success` status and a transaction `Hash`.

* Refactor trading commands and enhance API routes

- Updated `OpenPositionCommandHandler` to use asynchronous methods for opening trades and canceling orders.
- Introduced new Fastify routes for opening positions and canceling orders with appropriate request validation.
- Modified `EvmManager` to handle both Privy and non-Privy wallet operations, utilizing the Fastify API for Privy wallets.
- Adjusted test configurations to reflect changes in account types and added helper methods for testing Web3 proxy services.

* Enhance GMX trading functionality and update dependencies

- Updated `dev:start` script in `package.json` to include the `-d` flag for Fastify.
- Upgraded `fastify-cli` dependency to version 7.3.0.
- Added `sourceMap` option to `tsconfig.json`.
- Refactored GMX plugin to improve position opening logic, including enhanced error handling and validation.
- Introduced a new method `getMarketInfoFromTicker` for better market data retrieval.
- Updated account type in `PrivateKeys.cs` to use `Privy`.
- Adjusted `EvmManager` to utilize the `direction` enum directly for trade direction handling.

* Refactor GMX plugin for improved trading logic and market data retrieval

- Enhanced the `openGmxPositionImpl` function to utilize the `TradeDirection` enum for trade direction handling.
- Introduced `getTokenDataFromTicker` and `getMarketByIndexToken` functions for better market and token data retrieval.
- Updated collateral calculation and logging for clarity.
- Adjusted `EvmManager` to ensure proper handling of price values in trade requests.

* Refactor GMX plugin and enhance testing for position opening

- Updated `test:single` script in `package.json` to include TypeScript compilation before running tests.
- Removed `this` context from `getClientForAddress` function and replaced logging with `console.error`.
- Improved collateral calculation in `openGmxPositionImpl` for better precision.
- Adjusted type casting for `direction` in the API route to utilize `TradeDirection` enum.
- Added a new test for opening a long position in GMX, ensuring functionality and correctness.

* Update sdk

* Update

* update fastify

* Refactor start script in package.json to simplify command execution

- Removed the build step from the start script, allowing for a more direct launch of the Fastify server.

* Update package.json for Web3Proxy

- Changed the name from "Web3Proxy" to "web3-proxy".
- Updated version from "0.0.0" to "1.0.0".
- Modified the description to "The official Managing Web3 Proxy".

* Update Dockerfile for Web3Proxy

- Upgraded Node.js base image from 18-alpine to 22.14.0-alpine.
- Added NODE_ENV environment variable set to production.

* Refactor Dockerfile and package.json for Web3Proxy

- Removed the build step from the Dockerfile to streamline the image creation process.
- Updated the start script in package.json to include the build step, ensuring the application is built before starting the server.

* Add fastify-tsconfig as a development dependency in Dockerfile-web3proxy

* Remove fastify-tsconfig extension from tsconfig.json for Web3Proxy

* Add PrivyInitAddressResponse model for handling initialization responses

- Introduced a new class `PrivyInitAddressResponse` to encapsulate the response structure for Privy initialization, including properties for success status, USDC hash, order vault hash, and error message.

* Update

* Update

* Remove fastify-tsconfig installation from Dockerfile-web3proxy

* Add build step to Dockerfile-web3proxy

- Included `npm run build` in the Dockerfile to ensure the application is built during the image creation process.

* Update

* approvals

* Open position from front embedded wallet

* Open position from front embedded wallet

* Open position from front embedded wallet

* Fix call contracts

* Fix limit price

* Close position

* Fix close position

* Fix close position

* add pinky

* Refactor position handling logic

* Update Dockerfile-pinky to copy package.json and source code from the correct directory

* Implement password protection modal and enhance UI with new styles; remove unused audio elements and update package dependencies.

* add cancel orders

* Update callContract function to explicitly cast account address as Address type

* Update callContract function to cast transaction parameters as any type for compatibility

* Cast transaction parameters as any type in approveTokenImpl for compatibility

* Cast wallet address and transaction parameters as Address type in approveTokenImpl for type safety

* Add .env configuration file for production setup including database and server settings

* Refactor home route to update welcome message and remove unused SDK configuration code

* add referral code

* fix referral

* Add sltp

* Fix typo

* Fix typo

* setup sltp on backtend

* get orders

* get positions with slp

* fixes

* fixes close position

* fixes

* Remove MongoDB project references from Dockerfiles for managing and worker APIs

* Comment out BotManagerWorker service registration and remove MongoDB project reference from Dockerfile

* fixes
2025-04-20 22:18:27 +07:00