Commit Graph

727 Commits

Author SHA1 Message Date
microwavedcola1 29002e7197
Spot based token rebalancer (#541)
* script to relabance account to usdc

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* update procfile

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fix script

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* add prio fees

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* reset

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-19 18:15:39 +02:00
microwavedcola1 2f1839cb98
Ts keeper (backup for rust keeper) (#546)
* keeper

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* update

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* format

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* update defaults

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fix script

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-19 17:42:13 +02:00
microwavedcola1 6ac9f19287
Perp force close positions in a market (#525)
* force close tokens

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* add test

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* reset

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* force close perp market

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* rename

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* test

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* update

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* add back staleness slot check

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-19 17:42:01 +02:00
microwavedcola1 a40ceedc97
Fix bug where if no insurance fund position was present, ix would err… (#522)
* Fix bug where if no insurance fund position was present, ix would error out

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* prettier

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-17 11:30:27 +02:00
microwavedcola1 227aadfc22
merge ts-client to dev (#538)
* expose perp order type on perp order

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* v0.9.17

* Fix funding rate method

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fix scrript

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* v0.9.18

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-17 11:19:47 +02:00
microwavedcola1 e28fe944c0
add a script to render price impact for scale amount from and to (#539)
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-17 11:19:15 +02:00
microwavedcola1 d3b784fd84 update
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-17 08:54:02 +02:00
microwavedcola1 ef8da2cf62 readme
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-17 08:52:27 +02:00
Christian Kamm 98a79505e1
FlashLoan: Don't deduce vault_len, add more checks (#542)
It looks like it wasn't possible to exploit the program by
re-initializing the user-owned token accounts used in flash loan because
the later use of health_ais with the health computation would error out
if any token account was included there.

However, the check and a few others were too indirect. In this patch:
- We pass the number of loans into FlashLoanEnd explicitly (verified
  from FlashLoanBegin)
- Add explicit checks for token mints, so it's no longer possible to use
  token accounts for foreign mints in Begin when the loan amount is zero,
  and it's clearer to see that the bookkeeping in End won't break if the
  user reinited the account for a different mint.
- Also add a few other extra comments and checks.

The updated FlashLoanEnd instruction is called FlashLoanEndV2
2023-04-14 15:18:02 +02:00
microwavedcola1 b07857c696
force close tokens program part (#518)
* force close tokens

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* add test

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* reset

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-13 12:44:12 +02:00
Christian Kamm 61a4f62ea4 Bump program version to v0.13.0 and update idl 2023-04-13 09:53:15 +02:00
Christian Kamm 74f7282d4e Bump program version to v0.12.0 and update idl 2023-04-13 09:46:58 +02:00
Riordan Panayides 9a289a6e8c v0.9.16 2023-04-07 15:25:05 +01:00
Riordan Panayides 45b9dbf383 Merge branch 'dev' into ts-client 2023-04-07 14:05:42 +01:00
Riordan Panayides b49e41a2eb Fix paths in archived scripts 2023-04-07 14:04:32 +01:00
riordanp 24d8a5753a
Merge dev changes (#532)
* Fix script

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fix docs build job (#501)

* workaround where rpc rejects base58 encoded pubkeys (#502)

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Rename settle-bot to settler, fix build (#492)

* Fix settler build, rename due to heroku not liking '-'

* Temporarily remove ref tag

* Remove temporary branch trigger

* Add oracleProvider to Bank and PerpMarket (#491)

* Add oracleProvider to Bank and PerpMarket

* v0.9.6

* Fix null checks on getters for PerpMarket and Bank (#505)

* Export OracleProvider

* Fix null checks on getters

* token_liq_bankruptcy: Use oracle for valuing insurance fund tokens (#503)

Previously a token from the insurance fund was valued at 1 USD. Now it
uses the oracle associated with it (USDC oracle).

* v0.9.7

* ts: Fix ix gate enum, add code for creating a disable-tx gov ix

* Fee buyback: Respect USDC oracle (#504)

* refactor script (#509)

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* IxGateSet: Log AccountBuybackFeesWithMngo state

* TokenRegister: Sanity checks on token_index

* Allow token/market names to fill storage bytes completely

Previously the last byte was always zero.

* HealthRegion: Whitelist allowed instruction types (#508)

This fixes a security issue where bankruptcy related instructions could
be called inside a health region. Now health regions are limited to
compute optimization like when placing multiple orders in one
transaction.

This limitation also makes it impossible to abuse health regions for
flash loans. Use the FlashLoan instructions for that purpose.

* Add fly deploy scripts (#490)

* Bump program version to v0.10.0

* liquidator docs (#512)

* liquidator docs

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* update

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* update

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Quality of life fixes (#511)

* breaking: make pegLimit an optional arg
* pass externally cached blockhashes to sendTransaction
* convenience accessors for connection & walletPk on client

* add script to sim accounts with leverage change (#514)

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fix bug: only account for borrows we are offsetting (#513)

* Fix bug: only account for borrows we are offsetting

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* fix

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Bank: Unittest for net borrow limits

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
Co-authored-by: Christian Kamm <mail@ckamm.de>

* extend script, fix util function

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fix interest rate computation in client (#520)

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* minor ts fixes

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Temporarily disable health region use on mm script (#507)

* Use new shared mango-feeds-connector crate for chain_data (#515)

* Add prometheus metrics to crank (#517)

* Add prometheus metrics to keeper

* update script

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* fix bug where unrealised profit was not abs'ed

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fix script

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* update script

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* in perp settle fees, dont error, rather return early, this enables blindly concatenating perp settle fees to perp settle pnl (#526)

* in perp settle fees, dont error, rather return early

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* update script

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Net borrow limits: Use correct price for check (#527)

* Changelog for program-v0.10.0 and idl update

* script for grabbing logs

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Perp funding: Fix logging in update funding + deactivate pos (#528)

* update

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fix test

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* sync rate params to latest proposal (#523)

* sync rate params to latest proposal

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Limit funding and interest accrual during downtimes (#529)

Previously, if the funding or interest updating instruction wasn't
called for a long time (like for a solana downtime or the security
council halting the program), the next update would apply funding or
interest for the whole time interval since the last update.

This could lead to a bad downtime situation becoming worse. Instead,
limit the maximum funding and interest time interval to one hour.

* Changelog for program-v0.11.0, bump version, update idl

* Don't reload openorders if there's no active markets

* update

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* reorg

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Emit perp fees settled on update_funding. Required to have a full picture of total perp market fees. (#530)

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
Co-authored-by: microwavedcola1 <microwavedcola@gmail.com>
Co-authored-by: microwavedcola1 <89031858+microwavedcola1@users.noreply.github.com>
Co-authored-by: Christian Kamm <mail@ckamm.de>
Co-authored-by: Maximilian Schneider <mail@maximilianschneider.net>
Co-authored-by: tlrsssss <tjshipe@gmail.com>
Co-authored-by: Nicholas Clarke <nicholasgclarke@gmail.com>
2023-04-07 13:57:53 +01:00
Riordan Panayides 63049df695 Fix vault balance conversion 2023-04-07 11:51:33 +01:00
Nicholas Clarke 0ba41e3471
Emit perp fees settled on update_funding. Required to have a full picture of total perp market fees. (#530) 2023-04-06 22:09:50 -07:00
microwavedcola1 3191a10622 add workaround to computing max perp trade
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-04 14:44:46 +02:00
microwavedcola1 9a77f8d64d reorg
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-04 08:36:54 +02:00
microwavedcola1 c8bd104e87 update
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-04 08:28:45 +02:00
Riordan Panayides cd3f6a684a Don't reload openorders if there's no active markets 2023-04-03 16:12:03 -04:00
Riordan Panayides 789a5135ac Don't reload openorders if there's no active markets 2023-04-03 20:07:00 +01:00
Christian Kamm 535b0b2d0c Changelog for program-v0.11.0, bump version, update idl 2023-03-31 18:47:34 +02:00
microwavedcola1 2a6ac62d17 Merge branch 'ts-client' into dev 2023-03-30 21:09:19 +02:00
microwavedcola1 8156e2396d Merge branch 'deploy-mm' into ts-client 2023-03-30 21:09:12 +02:00
microwavedcola1 4710c61a11 comment
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-30 21:09:01 +02:00
microwavedcola1 207ad830f4 trigger funding before cancelling all orders
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-30 21:05:36 +02:00
microwavedcola1 fc764446bd Merge branch 'ts-client' into dev 2023-03-30 17:43:43 +02:00
microwavedcola1 fd8e68d633 update url
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-30 17:38:20 +02:00
Christian Kamm ec48db01bb Changelog for program-v0.10.0 and idl update 2023-03-30 17:28:14 +02:00
microwavedcola1 b7189696d8 update script
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-30 17:17:38 +02:00
microwavedcola1 7d389275a8 update script
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-30 17:00:28 +02:00
microwavedcola1 9b9ad707c2 Fix script
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-30 10:40:33 +02:00
microwavedcola1 f89a7b03a1 Merge branch 'ts-client' into dev 2023-03-30 10:37:25 +02:00
microwavedcola1 612595b246 combined fees and pnl settle tx
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-30 10:30:15 +02:00
microwavedcola1 1bff79f8f9 perp settle pnl and fees ix
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-30 10:19:00 +02:00
microwavedcola1 613b062e8f fix bug where unrealised profit was not abs'ed
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-30 10:12:16 +02:00
microwavedcola1 d0cf3e6b42 update script
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-30 10:10:00 +02:00
microwavedcola1 47adfa6540 fix bug where unrealised profit was not abs'ed
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-30 09:39:49 +02:00
microwavedcola1 6870d2d871 increase spread
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-29 20:54:07 +02:00
microwavedcola1 e677f78ea1 remove delay
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-29 20:37:36 +02:00
microwavedcola1 c6b9c70d4d add random delay
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-29 20:37:05 +02:00
microwavedcola1 a66e9db94c add random delay
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-29 20:36:32 +02:00
microwavedcola1 b57b330d1f increase size
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-29 09:19:31 +02:00
microwavedcola1 1da6493230 Merge branch 'deploy-mm' into ts-client 2023-03-28 07:47:10 +02:00
microwavedcola1 03250d44da Merge branch 'deploy-mm' into dev 2023-03-28 06:39:27 +02:00
microwavedcola1 847a3bd618 increase size
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-27 20:29:37 +02:00
microwavedcola1 ef23d1406e minor ts fixes
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-27 13:34:12 +02:00
microwavedcola1 c29c41e20f Fix interest rate computation in client (#520)
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-27 10:39:26 +02:00