Christian Kamm
eca4550fa2
Client: fix issue when no serum program is registered ( #732 )
...
The serum StreamMap exiting aborts the whole streaming job.
2023-09-27 12:56:52 +02:00
Christian Kamm
ac38ccc687
Drop HealthCache from idl, disable ComputeAccountData ix ( #723 )
...
It's used for tests, we don't want people depending on it.
2023-09-19 10:01:44 +02:00
Christian Kamm
2c4009eab1
Token deposit: Require valid oracle for new token positions ( #722 )
...
This avoids making an account accidentally or intentionally unusable
(except for deposits/withdraws) by depositing a token with a stale
oracle.
2023-09-19 09:08:32 +02:00
Christian Kamm
9b224eae1b
Jupiter: Ensure source account is initialized ( #721 )
2023-09-18 09:21:46 +02:00
Christian Kamm
40ad0b7b66
Rust client: Use alts for every transaction ( #720 )
2023-09-18 09:21:30 +02:00
Christian Kamm
2adc0339dc
Serum3 open orders: Fix health overestimation ( #716 )
...
When bids or asks crossed the oracle price, the serum3 health would be
overestimated before.
The health code has no access to the open order quantites or prices and
used to assume all orders are at oracle price.
Now we track an account's max bid and min ask in each market and use that
as a worst-case price. The tracking isn't perfect for technical reasons
(compute cost, no notifications on fill) but produces an upper bound on
bids (lower bound on asks) that is sufficient to make health not
overestimate.
The tracked price is reset every time the serum3 open orders on a book
side are completely cleared.
2023-09-13 09:35:10 +02:00
Christian Kamm
7b8a92dcea
Idl compatibility check: Also cover ix args and field renames ( #709 )
2023-09-08 21:13:30 +02:00
Christian Kamm
0aabd28cdc
Merge remote-tracking branch 'origin/deploy' into dev
2023-09-07 13:14:03 +02:00
Christian Kamm
97d3ec01c1
scripts: fix mainnet-no-margin-group post-merge
2023-09-07 13:07:55 +02:00
Christian Kamm
d60bea7436
Merge remote-tracking branch 'origin/main' into deploy
2023-09-07 12:59:50 +02:00
microwavedcola1
56eb48904a
Merge tag 'program-v0.19.0'
2023-09-07 10:46:37 +02:00
tjs
1861d127bc
only remove active filter from Ids on perp markets
2023-09-06 14:11:25 -04:00
tjs
335c98a09a
v0.19.14
2023-09-06 13:53:07 -04:00
tjs
f2eb37b598
ids should return all subitems for a group regardless of active state
2023-09-06 13:51:40 -04:00
tjs
7b4d46e135
v0.19.13
2023-09-05 10:59:55 -04:00
microwavedcola1
b42a35cdb9
sb logs
...
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-09-05 15:56:04 +02:00
tlrsssss
025f594fb2
Merge pull request #705 from blockworks-foundation/ts/ids-fixes
...
Ts/ids fixes
2023-09-05 09:41:08 -04:00
tjs
c7c362292c
Support reloading reloadSerum3ExternalMarkets from Ids class
...
remove console logs
2023-09-05 09:35:17 -04:00
tjs
3715a9a7f2
Update Ids class so the array filters in the getters work
...
Also add placeholder values in ids.json so types work; Deprecate ids.json
2023-09-04 21:04:42 -04:00
Adrian Brzeziński
2110cf7f55
v0.19.12
2023-09-04 18:20:02 +02:00
Adrian Brzeziński
79ea2bc7df
preprended instruction change ( #703 )
...
* fix
* fix
2023-09-04 18:06:37 +02:00
microwavedcola1
0a2bf3abd5
ts: example script no margin group ( #697 )
...
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-09-04 17:11:04 +02:00
Harrison Green
bffb77064a
Add audit report for 0.19.0 ( #704 )
2023-09-04 09:33:14 +02:00
Christian Kamm
ba6bd96784
Allow account shrinking and migration ( #692 )
...
- The AccountExpand instruction can now shrink accounts by reducing
the number of token/perp/serum/tcs/perp oo slots.
- A new AccountSizeMigration instruction can permissionlessly shrink
accounts that are too large and migrate them to the v3 layout.
2023-09-04 09:30:57 +02:00
Christian Kamm
139555a46e
liquidator: Make the check interval configurable ( #702 )
...
And reduce the default from 5s to 1s.
2023-09-01 16:27:17 +02:00
Christian Kamm
aca2b2e679
liquidator: Work on groups without openbook markets ( #701 )
2023-09-01 15:05:43 +02:00
Adrian Brzeziński
bb478b9631
v0.19.11
2023-08-31 14:37:29 +02:00
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
Christian Kamm
289c3ff828
FlashLoan: Log the approved amount ( #696 )
...
Previously only the part of the approved amount that was a loan got
logged, missing some interesting information.
(cherry picked from commit 03378bb808
)
2023-08-30 10:58:17 +02:00
Christian Kamm
03378bb808
FlashLoan: Log the approved amount ( #696 )
...
Previously only the part of the approved amount that was a loan got
logged, missing some interesting information.
2023-08-30 10:57:41 +02:00
microwavedcola1
e0de779d96
v0.19.10
2023-08-30 07:21:53 +02:00
microwavedcola1
e730bcd146
ts: perpCancelOrderByClientOrderIdIx
...
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-08-30 07:21:03 +02:00
Christian Kamm
7125058ce5
Account expansion: Transfer more lamports only if needed ( #694 )
...
Result of audit feedback
(cherry picked from commit 020a978270
)
2023-08-29 10:03:54 +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
020a978270
Account expansion: Transfer more lamports only if needed ( #694 )
...
Result of audit feedback
2023-08-29 10:03:24 +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
92be5b7de6
v0.19.9
2023-08-28 17:34:52 +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
da8a5909f9
v0.19.8
2023-08-28 08:45:02 +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
a855d5467a
v0.19.7
2023-08-25 15:30:16 +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
0f10cb4d92
client/liquidator: jupiter v6 ( #684 )
...
Add rust client functions for v6 API that are usuable in parallel to the v4 ones.
2023-08-24 16:45:01 +02:00
Christian Kamm
6e2363c86f
Improve CU benchmarks ( #690 )
2023-08-24 16:33:08 +02:00
Lou-Kamades
2237986c4b
Merge pull request #687 from blockworks-foundation/lou/yarn-dedup
...
ci: add yarn duplicates check
2023-08-24 09:32:43 -05: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