Commit Graph

1033 Commits

Author SHA1 Message Date
Adrian Brzeziński d9f756b346
additional functions mechanizm (#700) 2023-08-31 14:36:04 +02:00
Christian Kamm c07978fb68
max_swap: Fix swapping between zero weight tokens (#699)
Co-authored-by: microwavedcola1 <microwavedcola@gmail.com>
2023-08-31 14:01:18 +02:00
Christian Kamm e37f1ed996 update idl 2023-08-30 10:59:14 +02:00
microwavedcola1 e730bcd146 ts: perpCancelOrderByClientOrderIdIx
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-08-30 07:21:03 +02:00
Christian Kamm 2d392c8fff FlashLoan: fee fixes (#693)
- Rename the new "swap fee" to "deposit fee" and let it apply to all
  deposits, not just for Swap-type flash loans.
- But don't apply it to withdrawals (effectively giving rebates!)

Result of audit feedback

(cherry picked from commit 1d6ce550f3)
2023-08-29 10:03:53 +02:00
Christian Kamm 1d6ce550f3
FlashLoan: fee fixes (#693)
- Rename the new "swap fee" to "deposit fee" and let it apply to all
  deposits, not just for Swap-type flash loans.
- But don't apply it to withdrawals (effectively giving rebates!)

Result of audit feedback
2023-08-29 10:03:07 +02:00
microwavedcola1 0ee9af749f ts: getInstantaneousFundingRatePerSecond
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-08-28 17:56:14 +02:00
microwavedcola1 6871ca2ad4 ts: use average slippage for computing tcs premium
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-08-28 17:33:34 +02:00
microwavedcola1 e767990c64 ts: fix bug in perp close all lot computation
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-08-28 08:44:13 +02:00
microwavedcola1 ea02670003 ts: drop the premium calculators chunk size for tcs swap, we were overestimating slippage before
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-08-25 15:29:30 +02:00
Christian Kamm f63163d737
Account limits: Prefer 4 perp + 4 serum (#689) 2023-08-21 16:26:49 +02:00
Christian Kamm a151ebcf11
Account size: restict more, but only increases (#688)
* Account size: Don't fail on unrelated resize

If the account was previously resized to larger than is allowed now,
don't fail unrelated resizes.

* Further reduce account size limits

Out of caution and future-proofing. Can always raise again.

Perp settle pnl needs 6 accounts plus 2 health account lists that could
be nearly fully disjoint.
2023-08-21 14:34:52 +02:00
microwavedcola1 447e7cb151 ts: update tcs helpers
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-08-20 21:30:12 +02:00
Christian Kamm 34a875d968
Restrict account growth (#686)
Because of the 64-accounts-per-tx limit. Making a single account use
more than half of these could be problematic.
2023-08-19 08:20:40 +02:00
Christian Kamm 3480b62945
Changelog and version bump for program v0.19.0 (#683) 2023-08-18 15:38:28 +02:00
Christian Kamm a244c27df6
Add account_create_v2 instruction (#680)
This one allows specifying the number of tcs slots. That way accounts
can be created without needing a separate extend instruction afterwards.
2023-08-18 15:36:36 +02:00
Lou-Kamades 2460afce85
Merge pull request #662 from blockworks-foundation/lou/estimate-priority-fees
Add estimatePrioritizationFee to the ts client
2023-08-16 15:42:55 -05:00
Adrian Brzeziński 27097faa2f
listing fixes (#678)
* remove listing tools

* adjust stalness slots in trustless instruction
2023-08-15 13:33:48 +02:00
Christian Kamm 1dd934f8ad ts: fix stub oracle reading 2023-08-14 15:15:56 +02:00
microwavedcola1 aa1a9f36e9 ts: add tcs helper for current pair price
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-08-13 12:01:20 +02:00
microwavedcola1 f2d8e72057 doesnt need to be async
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-08-12 19:37:29 +02:00
microwavedcola1 765f82c5be make helper function public
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-08-11 22:06:21 +02:00
microwavedcola1 c1be446aab
Mc/slot to tx (#676)
* v0.18.17

* ts: return confirmed slot when executing a tx

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-08-11 19:12:13 +02:00
microwavedcola1 c37e535273 Fix price limit calculation in tcs
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-08-11 16:46:19 +02:00
Lou-Kamades 3b67bfee8a
ts client: estimate priority fees for only write accounts 2023-08-11 09:18:41 -04:00
Vladimir Guguiev 707de12bb7
Client: wrap SOL using createWithSeed (#671) 2023-08-11 09:35:57 +02:00
Lou-Kamades aace8a06e5
TS: add estimatePrioritizationFee 2023-08-10 22:03:41 -04:00
microwavedcola1 c7cc7c248c ts: fix threshold price computation in token conditional swaps
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-08-10 16:16:05 +02:00
Christian Kamm f462c62816 ts: reuse tcs creation function 2023-08-10 13:48:28 +02:00
Christian Kamm 27dadbb6bc ts: Use tcsCreateV2 2023-08-10 13:39:39 +02:00
Christian Kamm b2e578bc61 Merge remote-tracking branch 'origin/deploy' into dev 2023-08-10 13:32:06 +02:00
Christian Kamm e4a9a56f89
Pass all params to token_register (#665)
Makes governance a little easier
2023-08-09 13:55:53 +02:00
microwavedcola1 9a2433263d Disallowing PDA token owners currently causes errors when the user wallet is a Smart Wallet (PDA). Fix that
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-08-09 13:32:03 +02:00
Christian Kamm 6dcd5c925c
FlashLoan swaps: Allow charging a fee (#660)
To give more flexibility to the DAO.

The fee is deducted from any deposits that happen during the flash loan
and controlled per-bank with TokenEdit.
2023-08-09 13:27:25 +02:00
microwavedcola1 8d924a8b9b
Delegate with expiry (#663)
* delegate with expiry

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

* update idl

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>

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-08-09 12:05:16 +02:00
Christian Kamm 4810b6afbc
Tcs: store a display-only intention enum (#667)
This way the ui can know what the user created the tcs order for.

Introduces tcs create and trigger v2 logs.
2023-08-08 18:16:59 +02:00
microwavedcola1 5755480248 threshold price ui helper for tcs in ts client
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-08-08 14:59:43 +02:00
microwavedcola1 cb3159811c Fix max sell in tcs client code
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-08-08 14:11:11 +02:00
Christian Kamm 785e6353c1 Fix compile after merges 2023-08-08 10:36:21 +02:00
Christian Kamm 774c67909e
Tcs: Use fees config from Bank instead of Group (#659)
To give more flexibility to the DAO, the maximum tcs fees from
the buy and sell banks will be used.
2023-08-08 10:21:13 +02:00
microwavedcola1 f46c633a4f Fix max number
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-08-08 08:24:20 +02:00
microwavedcola1 4c083a9a56
ts client: fix getMaxWithdrawWithBorrowForToken (#664)
* fix max withdraw amount, wasnt taking into account scaled weights

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-08-07 13:12:37 +02:00
microwavedcola1 776545fcdd
token conditional swaps, fixes from review (#653)
* tcs fixes from review, and easy to use helper functions

* 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>

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-08-07 13:09:19 +02:00
microwavedcola1 43580ca26a expose idl
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-08-07 09:35:09 +02:00
microwavedcola1 14a2821d87 Revert "https://github.com/blockworks-foundation/mango-v4/pull/651 make transaction compatible with smart wallets"
This reverts commit ad5d0e3054.
2023-08-04 19:59:04 +02:00
microwavedcola1 ad5d0e3054 https://github.com/blockworks-foundation/mango-v4/pull/651 make transaction compatible with smart wallets
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-08-04 11:29:26 +02:00
Christian Kamm 1be38d14cb
Tcs: Add price display style enum (#654)
Tcs orders always store prices in a fixed "sell per buy" style, but users
can create them in either price direction. When they look at them later,
the ui needs to know what their preferred style is for this order.
2023-08-03 12:37:01 +02:00
Christian Kamm 06f6d75b98
Fix typo in admin_token_withdraw_fees ix (#655) 2023-08-03 12:34:33 +02:00
microwavedcola1 68f0502577 cancel all for tcs
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-31 14:54:39 +02:00
microwavedcola1 6e42b041a8 v0.18.5 2023-07-31 13:39:09 +02:00
microwavedcola1 1dc692c5ac add missing fields on the group
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-31 06:48:58 +02:00
microwavedcola1 ca9b3cecf9 Revert "Client: use createWithSeed when wrapping SOL (#651)"
This reverts commit ba9a1d0b35.
2023-07-28 16:35:14 +02:00
Vladimir Guguiev ba9a1d0b35 Client: use createWithSeed when wrapping SOL (#651) 2023-07-28 16:09:25 +02:00
Vladimir Guguiev ca7f1422ca
Client: use createWithSeed when wrapping SOL (#651) 2023-07-28 16:09:05 +02:00
microwavedcola1 5f7d704911 improve tcs further
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-28 15:57:25 +02:00
microwavedcola1 fbe0056202 disable for now
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-28 15:44:52 +02:00
microwavedcola1 ef2df16f83 cleanup tcs
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-28 15:32:50 +02:00
microwavedcola1 5008d3253c Fixes for tcs
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-28 15:13:01 +02:00
microwavedcola1 e4ff67bc2f make public
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-28 08:36:58 +02:00
microwavedcola1 1fdd327f4c Merge branch 'ckamm/deploy-v0.18.0-merge' into deploy 2023-07-28 08:26:50 +02:00
microwavedcola1 c24e77d3a4
wip: extend tcs helpers (#649)
* extend tcs helpers

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

* comment

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

* add slippage helper

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

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-28 08:26:34 +02:00
microwavedcola1 d162c612d0 allow pdas as owners
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-25 13:35:25 +02:00
microwavedcola1 cad6306bf6 examples
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-21 13:45:07 +02:00
microwavedcola1 d98bf2357b update idl
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-21 08:46:24 +02:00
tjs 214ffafb1f expose additional bank params 2023-07-19 14:57:29 -04:00
Christian Kamm fef5fd97da Merge remote-tracking branch 'origin/release/program-v0.18' into deploy 2023-07-17 16:28:59 +02:00
microwavedcola1 f3a7c5ca14 make consistent with other sim functions
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-17 15:23:47 +02:00
Christian Kamm 348fef80f3 Tcs: reserve token positions while tcs is open (#647)
- Update in_use_count to u16
- Pass banks to TCS cancel instruction
- Increase the in_use_count when a tcs is created and decrease on
  trigger/cancel

(cherry picked from commit 5dd5c507f2)
2023-07-17 13:23:16 +02:00
Christian Kamm 5dd5c507f2
Tcs: reserve token positions while tcs is open (#647)
- Update in_use_count to u16
- Pass banks to TCS cancel instruction
- Increase the in_use_count when a tcs is created and decrease on
  trigger/cancel
2023-07-17 13:14:53 +02:00
microwavedcola1 7e917bb85d Fix type
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-14 14:02:06 +02:00
microwavedcola1 b1b0729eee settle all even spot
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-14 13:19:17 +02:00
microwavedcola1 1e61a6429e Fees to dao (#644)
* withdraw fees to dao

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>

* rename

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-07-13 18:42:50 +02:00
microwavedcola1 40a011a48e
Fees to dao (#644)
* withdraw fees to dao

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>

* rename

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-07-13 18:22:35 +02:00
microwavedcola1 9d2e4bf609
Perp close all positions helper (#643)
* close multiple perp positions in one tx

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

* settle all

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

* update

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-07-13 17:10:16 +02:00
microwavedcola1 e623b8c276
Enforce safety limits while borrowing, while computing max swap source, and max spot order base/quote (#642)
* --wip-- [skip ci]

* enforce safety limits while borrowing

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

* --wip-- [skip ci]

* --wip-- [skip ci]

* --wip-- [skip ci]

* 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-07-13 16:29:13 +02:00
microwavedcola1 c2a939bcfd Fix decimals
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-13 12:15:28 +02:00
microwavedcola1 2ebffcdb05 update
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-12 17:25:16 +02:00
microwavedcola1 b3b932f148 Fix headers
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-12 15:45:42 +02:00
microwavedcola1 d67970ebc1 fix header
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-12 15:28:20 +02:00
microwavedcola1 5ca349f94b use mngo cloud for risl
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-12 14:30:47 +02:00
microwavedcola1 604c38ed5b fix max swap
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-12 09:53:38 +02:00
microwavedcola1 a6fe8dfd48 fix max swap
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-12 09:38:48 +02:00
Christian Kamm 6b2f6af6e4 Idl: remove references to undefined openbook_v2 enums 2023-07-11 13:01:55 +02:00
Christian Kamm a7ac6f8dfb Update Cargo.lock and IDL after merge 2023-07-11 10:39:06 +02:00
galactus 6461743f35
Openbook v2 integration: instructions and accounts (#628) 2023-07-11 09:59:50 +02:00
microwavedcola1 c40bffb047 Merge branch 'main' into deploy 2023-07-07 15:44:50 +02:00
microwavedcola1 2060245f31 optimise
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-06 18:45:42 +02:00
microwavedcola1 05b9f8f5da ui helper
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-06 18:17:24 +02:00
microwavedcola1 4b82771487 also consider shorts
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-06 15:21:30 +02:00
Christian Kamm 30cb4d7753
Tcs: Switch prices from f32 to f64 (#634)
To have more precision when storing user supplied prices and ensure that
the rounding that will occur will be tiny compared to the user-provided
precision.
2023-07-06 14:48:49 +02:00
microwavedcola1 7ab0164d38 v0.17.1 2023-07-05 07:32:26 +02:00
Christian Kamm 3867d902d2 Bump program version to v0.18.0 2023-07-04 11:10:31 +02:00
Christian Kamm cc4a39850a Bump version and idl to v0.17.1 2023-07-04 11:08:59 +02:00
microwavedcola1 7e4ec9e14f Merge branch 'deploy-2' into dev 2023-07-04 11:05:39 +02:00
microwavedcola1 1ffa65d01b optimise getAllMangoAccounts
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-04 09:26:59 +02:00
Christian Kamm ae66dbc462 Bump version and idl to v0.17.1 2023-07-03 19:54:21 +02:00
Christian Kamm 35064d4ab0
Token conditional swaps (#604)
Users can request token swaps to happen when the oracle price
is within a price band. Once the price is right, an executor can
trigger the swap. The executors are rewarded with a premium
over the oracle price.

This allows limit and stop loss orders on arbitrary spot pairs.

The PR comes with basic ts support and adjustments to the liquidator,
to execute available token conditional swaps.

Co-authored-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-03 14:09:11 +02:00
microwavedcola1 c2e48df051 Merge branch 'main' into deploy 2023-07-03 09:02:25 +02:00
microwavedcola1 eba7b4d15b add perp market filter
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-07-03 08:20:13 +02:00
microwavedcola1 acf02e2575 new helpers
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-06-28 15:03:32 +02:00
microwavedcola1 53b608d79d optimize
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-06-28 09:45:15 +02:00
microwavedcola1 21c2af7317 make pp liq price faster to compute
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-06-28 08:04:49 +02:00
microwavedcola1 0e180ed380
Mc/perp liq price 2 (#625)
* perp position liquidation price calculator

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

* refactor

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

* ui method

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-06-26 16:45:52 +02:00
microwavedcola1 66ccd962bc
mc/break even price ts client: account for unsettled funding (#617)
* v0.16.3

* ts: break even price, account for unsettled funding

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

* script

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

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-06-23 14:32:04 +02:00
microwavedcola1 b84b135dae add realized pnl helpers, reorder methods
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-06-22 08:40:06 +02:00
Adrian Brzeziński f108ef4e4b
lisitng helpers (#616)
* lisitng helpers

* fix

* fix

* fix

* fix

* fix
2023-06-22 08:34:27 +02:00
Christian Kamm 7eedcbae0d
Serum3 edit market: Allow changing the name (#621) 2023-06-21 15:38:27 +02:00
microwavedcola1 09ee476ecf Fix risk computation for stable pairs
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-06-21 08:45:27 +02:00
microwavedcola1 6b2e9bbf12
deploy->dev (#612)
* 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

* ts-client v0.9.19

* fix script

* update reduce only and force close flags in ts client

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

* v0.13.1

* expose underlying property

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

* v0.13.2

* Fix bug in closing mango account (#559)

* reafactor code for collecting health accounts, fix bug where bank oracle was skipped while closing account

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>

---------

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

* v0.13.3

* fix client code for building health accounts

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

* v0.13.4

* Fix bug in sim max serum3 bid

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

* v0.13.5

* increase charge

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

* ts-client v0.14.0

* Fix getBorrowRate() to include loan upkeep

* ts-client v0.14.1

* Client: Move jup's CU ix outside of flash loan

That makes a flash loan based jup swap usable with delegates.

* liquidator: Don't attempt to close in-use token positions

This could happen if the user manually used serum on the liquidator
account.

* Mc/ci cd (#570)

* prettier

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

* Fix branch

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

---------

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

* rename

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

* Increase iterations for max swap to fix some edge case, fix debug script since fees are already accounted for

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

* v0.14.2

* Risk notification bot (#565)

* risk stuff

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>

* cleanup

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

* client function

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

---------

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

* fix

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

* v0.15.0

* fix risk computati

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

* Fixes from review

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

* v0.15.2

* Fix units

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

* dont drop or rally stable assets

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

* dont skip usdc

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

* Fixes from review

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

* v0.15.3

* Fix

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

* v0.15.4

* update

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

* v0.15.5

* update

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

* v0.15.6

* add highlight

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

* v0.15.7

* Fix math

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

* Fix

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

* v0.15.10

* Fix

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

* v0.15.12

* no-cors

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

* use birdeye for prices

* try to override bad node-fetch code

* Mc/client simple setup (#611)

* make setting up of ts client easier

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

* docs

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

---------

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

* ts client: perp place order ix builders with self trade behavior (#609)

* ix builders for self trade behavior on perps

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

* ix builders for self trade behavior on perps

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

---------

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

* v0.16.0

* typo

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

* typo

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

* move to new ixs

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

* v0.16.1

* Revert "try to override bad node-fetch code"

This reverts commit 468754d5ae.

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
Co-authored-by: Christian Kamm <mail@ckamm.de>
Co-authored-by: tjs <tjshipe@gmail.com>
2023-06-19 14:24:06 +02:00
microwavedcola1 01dbae9f0a update mm list
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-06-18 10:13:10 +02:00
microwavedcola1 e3300138a7
Fix ts client margin trade method to also work for delegates (#615)
* margin trade for delegate support

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

* Fixes from review

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

* example

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

* update

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

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-06-16 16:07:09 +02:00
Christian Kamm 9bd3913ba4 Changelog and idl update 2023-06-16 13:38:26 +02:00
microwavedcola1 e39531e87c typo
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-06-16 08:10:52 +02:00
microwavedcola1 43a034e91e typo
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-06-16 08:10:07 +02:00
microwavedcola1 ca8053e3ec
ts client: perp place order ix builders with self trade behavior (#609)
* ix builders for self trade behavior on perps

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

* ix builders for self trade behavior on perps

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

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-06-16 08:05:16 +02:00
microwavedcola1 07aa994a90
Mc/client simple setup (#611)
* make setting up of ts client easier

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

* docs

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

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-06-16 08:04:58 +02:00
Christian Kamm 0281a1b8ed
Deprecate Serum3SettleFunds, require use of V2 instruction (#606) 2023-06-15 17:34:56 +02:00
microwavedcola1 3df0e9da83 Merge branch 'main' into deploy 2023-06-15 14:21:47 +02:00
tjs 44fc32c311 use birdeye for prices 2023-06-07 20:38:38 -04:00
Christian Kamm 1cc77af7fa Bump version to 0.17.0, changelog updates, idl update 2023-05-31 09:11:56 +02:00
microwavedcola1 6a76476acd
referrerRebatesAccrued - these accrue to the ui now (#596)
* these accrue to the ui now

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-05-28 07:44:45 +02:00
microwavedcola1 f477fd1d45 no-cors
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-05-25 14:26:59 +02:00
microwavedcola1 7a7dd1cdf8 no-cors
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-05-25 14:26:53 +02:00
Christian Kamm 9f9f3d257c
Docs: improve HealthCache comments (#590) 2023-05-19 14:42:14 +02:00
Christian Kamm 5fc7aa1092
Configurable perp settle token (#550)
This changes perp market margining to no longer assume all pnl is in USD
while settlement is in USDC. Instead, a configurable settle token is used for
pnl and settlement, defaulting to USDC. 

There is no difference while the USDC price is forced to $1 and the init and liab
weights are 1. But with this patch, it becomes possible to change that.

For now it is not recommended to use a token other than USDC or USDT (or
another USD targeting stable token) for perp settlement.

The patch also updates all insurance vault use to be aware that the insurance
fund is not in USD but in USDC and apply the USDC price before payouts.
To do this, the previous PerpLiqNegativePnlOrBankruptcy was replaced by
a new PerpLiqNegativePnlOrBankruptcyV2 instruction.

Co-authored-by: microwavedcola1 <89031858+microwavedcola1@users.noreply.github.com>
2023-05-17 15:50:05 +02:00
microwavedcola1 5d31d6bf32
merge deploy changes to dev (#586)
* 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

* ts-client v0.9.19

* fix script

* update reduce only and force close flags in ts client

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

* v0.13.1

* expose underlying property

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

* v0.13.2

* Fix bug in closing mango account (#559)

* reafactor code for collecting health accounts, fix bug where bank oracle was skipped while closing account

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>

---------

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

* v0.13.3

* fix client code for building health accounts

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

* v0.13.4

* Fix bug in sim max serum3 bid

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

* v0.13.5

* increase charge

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

* ts-client v0.14.0

* Fix getBorrowRate() to include loan upkeep

* ts-client v0.14.1

* Client: Move jup's CU ix outside of flash loan

That makes a flash loan based jup swap usable with delegates.

* liquidator: Don't attempt to close in-use token positions

This could happen if the user manually used serum on the liquidator
account.

* Mc/ci cd (#570)

* prettier

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

* Fix branch

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

---------

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

* rename

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

* Increase iterations for max swap to fix some edge case, fix debug script since fees are already accounted for

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

* v0.14.2

* Risk notification bot (#565)

* risk stuff

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>

* cleanup

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

* client function

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

---------

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

* fix

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

* v0.15.0

* fix risk computati

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

* Fixes from review

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

* v0.15.2

* Fix units

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

* dont drop or rally stable assets

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

* dont skip usdc

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

* Fixes from review

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

* v0.15.3

* Fix

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

* v0.15.4

* update

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

* v0.15.5

* update

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

* v0.15.6

* add highlight

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

* v0.15.7

* Fix math

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

* Fix

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

* v0.15.10

* Fix

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

* v0.15.12

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
Co-authored-by: Christian Kamm <mail@ckamm.de>
2023-05-16 19:20:43 +02:00
microwavedcola1 34fcec422e Fix
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-05-16 15:37:50 +02:00
Christian Kamm e3dec81876
Changelog for program v0.16.0 and idl update (#585) 2023-05-16 12:57:42 +02:00
microwavedcola1 a7cef064a8 Fix
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-05-16 11:48:51 +02:00
microwavedcola1 f416f8a629 Fix math
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-05-16 11:46:42 +02:00
microwavedcola1 0749551c53 add highlight
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-05-16 11:22:50 +02:00
microwavedcola1 cc9f760665 update
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-05-16 11:04:26 +02:00
microwavedcola1 450dbb42b1 update
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-05-16 10:45:38 +02:00
microwavedcola1 d7c0cd7cf2 Fix
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-05-16 10:35:53 +02:00
microwavedcola1 2aa271453d Fixes from review
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-05-16 10:17:00 +02:00
microwavedcola1 0b3387f396 dont skip usdc
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-05-16 10:09:12 +02:00
microwavedcola1 2a490556f7 dont drop or rally stable assets
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-05-16 10:05:10 +02:00
microwavedcola1 590cdb8f60 Fix units
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-05-16 09:52:21 +02:00
microwavedcola1 a0daef806d Fixes from review
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-05-15 11:52:35 +02:00
microwavedcola1 4edf50c859 fix risk computati
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-05-15 11:47:42 +02:00
Maximilian Schneider c006948319
Enable self-trading protection (#533)
Co-authored-by: Christian Kamm <mail@ckamm.de>
2023-05-15 10:40:41 +02:00
Maximilian Schneider 9166b761e9
log taker trade summary (#579)
* add new event for taker trade so arb bots can verify their execution cost without waiting for consume events

Co-authored-by: Nicholas <nicholasgclarke@gmail.com>
2023-05-13 17:54:27 +02:00
microwavedcola1 8255d53a09 Risk notification bot (#565)
* risk stuff

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>

* cleanup

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

* client function

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

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-05-13 11:55:24 +02:00
microwavedcola1 08dfb0ddba
Risk notification bot (#565)
* risk stuff

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>

* cleanup

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

* client function

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

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-05-13 11:55:08 +02:00
Christian Kamm 5a05e9cb2e
Update anchor to v0.27.0, stop using submodule (#582) 2023-05-12 13:54:53 +02:00
microwavedcola1 59fe0ffcd9 Merge branch 'main' into deploy 2023-05-11 13:31:51 +02:00
microwavedcola1 f7e6d6469f Increase iterations for max swap to fix some edge case, fix debug script since fees are already accounted for
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-05-10 11:19:03 +02:00
microwavedcola1 13ac422875 Increase iterations for max swap to fix some edge case, fix debug script since fees are already accounted for
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-05-10 11:18:46 +02:00
Christian Kamm 2205fe7260
Changelog for program v0.15.0, version bump, idl update (#577) 2023-05-08 08:13:50 +02:00
Nicholas Clarke c0ea9970b6
Clarkeni/oracle confidence (#568)
* Add oracle confidence and oracle type to update funding logs.

* Return price and OracleState struct from oracle_price_and_state.
2023-05-05 23:44:14 -07:00
Christian Kamm 3600b6592c
ts-client: Fix serum taker fee computation (#573) 2023-05-05 09:11:47 +02:00
Christian Kamm 5ad1bb4c7d Fix getBorrowRate() to include loan upkeep 2023-05-01 15:15:45 +02:00
Christian Kamm 514f861e2f Merge tag 'program-v0.14.0' into deploy 2023-05-01 11:30:05 +02:00
Christian Kamm 4504ed8ff9 Compile fix and idl update 2023-04-26 09:07:05 +02:00
microwavedcola1 01ae9175e9 Fix bug in sim max serum3 bid
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-25 13:50:30 +02:00
Nicholas Clarke 2dce1398d3
Fix to seq num logging. Seq num was incremented between event and logging (#556) 2023-04-25 13:38:31 +02:00
Nicholas Clarke 5d77ba6834
Add PerpForceClosePositionLog and TokenForceCloseBorrowsWithTokenLog (#555) 2023-04-25 13:38:08 +02:00
microwavedcola1 b4ed4b6409 fix client code for building health accounts
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-25 11:13:40 +02:00
microwavedcola1 f0d8d404ca update idl, fix ts errors
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-25 10:14:38 +02:00
microwavedcola1 3741f78da5
insurance fund withdraw ix (#561)
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-25 09:20:44 +02:00
microwavedcola1 2305a160d0
Various force close bots (#554)
* wip: force close perp positions

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

* wip: force close cancel serum3 orders

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

* wip: force close token borrows

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>

* 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>

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-25 08:12:42 +02:00
microwavedcola1 e55c6da8df Fix bug in closing mango account (#559)
* reafactor code for collecting health accounts, fix bug where bank oracle was skipped while closing account

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>

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-24 14:49:22 +02:00
microwavedcola1 1bf1a8deb5
Fix bug in closing mango account (#559)
* reafactor code for collecting health accounts, fix bug where bank oracle was skipped while closing account

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>

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-24 14:48:53 +02:00
microwavedcola1 497012042c
Force close for serum3 market (#551)
* force close for serum3 market

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

* Fixes from review

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

* always require admin

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>

* format

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

* Fixes from review

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

* update client

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-20 10:19:23 +02:00
microwavedcola1 8e4603e22c expose underlying property
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-20 10:00:50 +02:00
microwavedcola1 793bd08ffd expose underlying property
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-20 09:59:21 +02:00
microwavedcola1 2df6ecbb4f add perp market force close prop to ts client
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-20 09:57:06 +02:00
microwavedcola1 6abddc8ba8
merge ts-client to dev (#553)
* 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

* ts-client v0.9.19

* fix script

* update reduce only and force close flags in ts client

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

* v0.13.1

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
Co-authored-by: Christian Kamm <mail@ckamm.de>
2023-04-20 09:55:14 +02:00
microwavedcola1 50477b2de6 update reduce only and force close flags in ts client
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-20 09:49:42 +02:00
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
Christian Kamm 04d6662128 Merge remote-tracking branch 'origin/main' into ts-client 2023-04-19 08:14:11 +02:00
microwavedcola1 2e060b7eaa Merge branch 'main' into ts-client 2023-04-17 16:03:03 +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 1fdd984a49 Fix funding rate method
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-15 08:44:02 +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 a174ff5be9 expose perp order type on perp order
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-13 15:27:43 +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
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
microwavedcola1 3191a10622 add workaround to computing max perp trade
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-04-04 14:44:46 +02:00
Riordan Panayides cd3f6a684a Don't reload openorders if there's no active markets 2023-04-03 16:12:03 -04:00
microwavedcola1 8156e2396d Merge branch 'deploy-mm' into ts-client 2023-03-30 21:09:12 +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 fd8e68d633 update url
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-30 17:38:20 +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 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 c29c41e20f Fix interest rate computation in client (#520)
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-27 10:39:26 +02:00
tjs 26d7ec505c make decodePriceFromOracleAi fn public so websockets can update price 2023-03-25 13:37:02 -04:00
microwavedcola1 6406b61d6a Add missing field on builder
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-20 08:57:27 +01:00
microwavedcola1 1c0c444c3d add missing field to group
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-13 19:35:13 +01:00
microwavedcola1 2adf7da861 Merge branch 'main' into ts-client 2023-03-13 11:09:19 +01:00
Christian Kamm 68f9f38a3c Update idl for v0.9.0 2023-03-12 08:37:52 +01:00
microwavedcola1 cb8ee54d0f Fix price unit used in health sim
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-07 13:08:54 +01:00
microwavedcola1 c7f577fc8e Fix price unit used in get max perp trade size
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-07 12:50:41 +01:00
microwavedcola1 cfdfd2f8a0 cleanup
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-07 12:34:49 +01:00
microwavedcola1 dc2a3b79de fix
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-07 12:34:19 +01:00
microwavedcola1 d9181fc4b5 Merge branch 'deploy-mm' into dev 2023-03-07 08:32:52 +01:00
microwavedcola1 679f8dd29b some more logginh
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-07 08:32:44 +01:00
Nicholas Clarke 97895dfb1e
buyback fees with mngo logging (#489)
* buyback fees with mngo logging

* add logging of usdc balances for account_buyback_fees_with_mngo
2023-03-06 14:42:10 +01:00
Christian Kamm 252210d194
Serum settle funds V2: fees can go to users (#484)
Co-authored-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-03 14:04:45 +01:00
microwavedcola1 1950d8c84a
support name edit for token and program (#488)
* support name edit for token and program

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

* undo

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-03-03 10:05:12 +01:00
microwavedcola1 b38bca5517 easy building of governance ixs
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-02 09:20:49 +01:00
microwavedcola1 f192c19fb8 Fix type
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-01 12:28:59 +01:00
microwavedcola1 925440b47e Fix type
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-01 12:17:46 +01:00
microwavedcola1 6c5c88b1e6 fix access specifier
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-03-01 12:12:01 +01:00
microwavedcola1 c48d9c94d9 Fix types
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-02-28 15:04:28 +01:00
microwavedcola1 07c46d0129 Revert "fix account in client ix"
This reverts commit 1343e70cc6.
2023-02-28 14:46:22 +01:00
microwavedcola1 1343e70cc6 fix account in client ix
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-02-28 14:45:25 +01:00
microwavedcola1 73b626efff
ts client for max buyback of fees with mngo (#480)
* ts client for max buyback of fees with mngo

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-02-28 12:05:02 +01:00
Christian Kamm e4d46c3c5b
Buyback fees: Add staggered expiry (#478) 2023-02-27 16:36:27 +01:00
microwavedcola1 25d94b0e7b Fix idl
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-02-27 08:49:43 +01:00
microwavedcola1 d88d44b34a
buyback perp fees with mngo at a discount (#464)
buyback perp fees with mngo

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-02-25 20:34:16 +01:00
microwavedcola1 330739364f
ts: add function on perp position to get notional value (#474)
* ts: add function on perp position to get notional value

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-02-24 10:43:37 +01:00
tjs f9bc74b48f fix return type on perp loadFills 2023-02-23 13:00:22 -05:00
microwavedcola1 16a41dfe38 Fix extraction of amount for token account and mm Procfile
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-02-22 15:08:13 +01:00
microwavedcola1 3fe008da8b Fix extraction of amount for token account and mm Procfile
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-02-22 15:08:05 +01:00
Christian Kamm cfcda705e6 Bump program version to v0.8.0 2023-02-22 14:49:18 +01:00
Christian Kamm de0f1a7458 Changelog for program v0.7.0 and idl update 2023-02-22 13:34:51 +01:00
tylersssss 4c9f99832f
Update package.json build steps and move js scripts out of src folder (#470)
* extracts scripts from source; update tsc build configs and packages

* publish latest

* remove type module
2023-02-22 08:36:59 +01:00
tylersssss f41f2ab337
Ts/client fixes (#471)
* fix bug with marking perp orders as expired

* support passing in perp books to find mango account orders

* support force reloading of acct perp open orders

* make perp market _bids and _asks public

* dont fetch open order accts if no serum3active
2023-02-22 08:07:06 +01:00
microwavedcola1 ae761c9270
support 32 perp oo by default (#467)
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-02-21 10:40:15 +01:00
tylersssss a87705fa37
fix fillevent type in client (#460) 2023-02-16 10:55:12 +01:00
Christian Kamm 023d2f96cb Settle pnl: Don't avoid settlement on being_liquidated accounts
The action doesn't decrease health and is already limited by
perp-settle-health, so it's fine to allow. (the instruction already
allows it, this fix is just for finding counterparties)
2023-02-15 15:11:58 +01:00
Christian Kamm 8916c28b99
License: Mark instructions GPLv3 and everything else MIT (#454)
To do that, split up the Accounts objects and the instruction
implementations.

GPL code is only used when the "enable-gpl" feature is enabled. That
means compiling the program or running tests need explicit feature
activation now.
2023-02-15 08:42:07 +01:00
Christian Kamm 820ab36209 Update idl 2023-02-14 16:04:37 +01:00
Adrian Brzeziński 02321e705f excude perp oracle pk from helthaccount during close account inst 2023-02-13 16:54:14 +01:00
Christian Kamm 1f66bef88f
Change liquidation end target to a new, third health type (#447)
Due to the safety features in v4, the init health can differ from maint
health a lot more than it used to in v3. This is because of stable-price
adjusted oracle prices used in init health, and the weight scaling based
on total deposits and borrows used in init health.

The effect is that once an account becomes liquidatable, it could be
liquidated a lot until it reaches init>=0.

The original idea of liquidating until init>=0 was just to provide some
buffer, such that liquidated accounts wouldn't immediately become
liquidatable again.

This patch decouples the buffer idea explicit from init health by
creating a new LiquidationEnd health type. Liquidation proceeds until
the LiquidationEnd health becomes positive.

Co-authored-by: microwavedcola1 <89031858+microwavedcola1@users.noreply.github.com>
2023-02-10 09:00:36 +01:00
microwavedcola1 184cf82e22
update settle limit before returning settleable pnl (#445)
* update settle limit before returning settleable pnl

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

* Revert "update settle limit before returning settleable pnl"

This reverts commit 29e38a85ef.

* provide a canSettlePnl to reflect constraints in perp settle pnl ix

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>

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-02-09 13:31:56 +01:00
microwavedcola1 a1b3b8bfc0 set start quote on banks
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-02-08 10:41:58 +01:00
microwavedcola1 0639681c33 configure max staleness slots
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-02-08 10:29:11 +01:00
microwavedcola1 0dba464a28 make dai reduce only
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-02-08 10:19:47 +01:00
microwavedcola1 4e3a7f22b9
remove perp zero out, was only added to cleanup testing perp market, can be re-added if needed (#430)
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-02-06 11:59:12 +01:00
Christian Kamm 75ec640820 liqtest: script fixes
- perp market should have zero asset weight to allow positive pnl
  takeover tests
- stable price should be reset, to allow better reasoning about health
2023-02-03 17:23:25 +01:00
Christian Kamm cbd3d915ba liqtest: Confirm ALT tx before proceeding
Not waiting can leave the alt-create and alt-extend in the same slot,
and ordered incorrectly.
2023-02-03 17:23:25 +01:00
Christian Kamm 3b9e8c7d2b ts: Add new convenience sendAndConfirmTx function 2023-02-03 17:23:25 +01:00
Christian Kamm 6c8204e9ef ts: Allow control over tx confirmation commitment level
When talking to a load balanced endpoint it can be useful to read data
from rpc nodes at processed while waiting for confirmed commitment
on transactions.
2023-02-03 17:23:25 +01:00
Christian Kamm 38d408126e client: Increase binary search iter limit 2023-02-03 17:23:25 +01:00
microwavedcola1 0ba7ecd506 Fix health region ix code
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-02-02 19:02:30 +01:00
microwavedcola1 a6a07307b0 fix mm
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-02-02 18:58:08 +01:00
Christian Kamm d9a253947c
ts: add back tokenWithdrawNative() (#434) 2023-02-02 15:08:57 +01:00
Christian Kamm 628feafcb0
ts: Use sendAndConfirmTransaction instead of anchor's .rpc() (#432)
This allows us to configure a prioritization fee for these calls.
2023-02-02 14:23:22 +01:00
Christian Kamm 40696f40a1 Bump program version to 0.6.0 2023-02-02 10:54:54 +01:00
Nicholas Clarke 4c93a2740a
Add market index to Serum3OpenOrdersBalanceLog (#429) 2023-02-02 10:01:19 +01:00
Christian Kamm df1f7418af update idl 2023-02-02 09:17:22 +01:00
Christian Kamm a91a9ae998
Perp: Fix liq instructions (#424)
- Rename to perp_liq_base_or_positive_pnl and perp_liq_negative_pnl_or_bankruptcy
- Deal with situations where overall asset weight is zero and base position reduction
  would not improve liqee health
- Add ability for liqors to take over positive unsettled pnl if that improves liqee health
2023-02-02 09:00:37 +01:00