Geoff Taylor
9b8ad18f10
Updated PollingLiquidator loop message to clarify looping.
2021-05-12 11:10:34 +01:00
Geoff Taylor
fb308c6205
Updated README.
2021-05-12 10:59:59 +01:00
Geoff Taylor
0d9635ba45
PollingLiquidator optimisation - now loops and updates ripe 🥭 accounts.
2021-05-12 10:52:26 +01:00
Geoff Taylor
b8e47792f8
Added a simple search script for dev code searches.
2021-05-12 09:14:10 +01:00
Geoff Taylor
a40b962965
Fixed dereference of group basket tokens.
2021-05-11 20:32:20 +01:00
Geoff Taylor
9b97722394
Fixed regression in importing notebook code.
2021-05-11 20:17:49 +01:00
Geoff Taylor
ef6b2b4da5
Fixed divisor bug in FloatAdapter.
2021-05-11 20:13:07 +01:00
Geoff Taylor
4cfc87d420
Split BasketTokenMetadata up. Improved linting.
...
* Split BasketTokenMetadata into BasketToken and Token.
* Improved linting and mypy so it worked across files.
2021-05-11 19:24:02 +01:00
Geoff Taylor
f56ba03f3e
Fixed bug in calling wallet balancer after a successful liquidation.
2021-05-10 18:56:35 +01:00
Geoff Taylor
ff80a085da
Clarified details of FloatAdapter (renamed from Float64Adapter) after information from Daffy on Discord.
2021-05-10 17:36:14 +01:00
Geoff Taylor
78fbb05970
Renamed SimpleLiquidator to PollingLiquidator.
2021-05-10 14:48:19 +01:00
Geoff Taylor
64b14600f7
Merged run-lint and run-mypy. Command is now just run-lint.
2021-05-10 14:46:37 +01:00
Geoff Taylor
fb52fe3671
Tidied up reporting of balances before and after a liquidation.
2021-05-10 14:20:08 +01:00
Geoff Taylor
b452887c28
Changed logging to use emoji for level and shorter datetime. Updated logs in Quickstart to reflect this.
2021-05-09 18:23:38 +01:00
Geoff Taylor
b398990898
Added a Quickstart! A nice walkthrough of setting up a liquidator.
2021-05-08 16:01:30 +01:00
Geoff Taylor
db91e1d9d8
Added a 'create-wallet' command, made other commands more consistent.
2021-05-07 10:47:01 +01:00
Geoff Taylor
0f05be4fc7
Added Pyston link to README.
2021-05-06 19:12:24 +01:00
Geoff Taylor
013a8ce715
Added Pyston to docker image and commands.
...
All commands now use Pyston instead of Python as the Python interpreter. It seems a bit faster.
2021-05-06 19:06:47 +01:00
Geoff Taylor
a774998409
Fixed problem with instantiating NullAccountLiquidator.
2021-05-06 19:00:54 +01:00
Geoff Taylor
fab0d909c2
Added 'dry run' option to commands that perform transactions.
2021-05-06 15:27:25 +01:00
Geoff Taylor
3db09e922c
Added wallet balancing. Big changes throughout to support this.
2021-05-06 14:21:40 +01:00
Geoff Taylor
f2d4e7c13f
Added Serum trading.
...
* Added nasty patch around pyserum bug
* OpenOrders can now provide (on-demand) the pyserum representation OpenOrdersAccount
* New context methods -unwrap_transaction_id_or_raise_exception() and random_client_id()
* Added Retrier and retry_context() function
* Added TradeExecutor and SerumImmediateTradeExecutor classes to trade on Serum
2021-05-04 17:18:09 +01:00
Geoff Taylor
9ff7619985
Fixed problem with logging messages and token dereference.
2021-05-02 14:36:16 +01:00
Geoff Taylor
9881f5f3dc
Removed debug cell from Liquidation notebook.
2021-05-01 10:17:23 +01:00
Geoff Taylor
70ddb1a364
Added timestamp to logging.
2021-04-30 15:20:59 +01:00
Geoff Taylor
6083eca622
Fixed linting problems with RPCErrors.
2021-04-29 17:20:46 +01:00
Geoff Taylor
9ae606b1c6
Commands now output the AccountScout report to show errors and warnings.
2021-04-29 16:33:04 +01:00
Geoff Taylor
8198d0bd60
Now checks for Serum OpenOrders accounts in AccountScout, but they're not mandatory. Margin account is also detailed but no longer mandatory.
2021-04-29 15:51:36 +01:00
Geoff Taylor
5bf67573ab
Fixed some script issues.
2021-04-29 14:23:05 +01:00
Geoff Taylor
9db61efaf5
mango-fetch can now fetch all margin accounts for a user.
2021-04-29 12:51:13 +01:00
Geoff Taylor
feda91156b
Fixed problem where OpenOrders could show the wrong program ID in some circumstances.
2021-04-29 12:11:28 +01:00
Geoff Taylor
c5734a0624
Moved development commands to 'scripts', so 'bin' is for actual commands.
...
* Added log level as parameter to commands.
2021-04-29 10:53:01 +01:00
Geoff Taylor
f8738770f5
Expanded liquidation process and steps.
2021-04-28 18:36:48 +01:00
Geoff Taylor
1370e924f3
Added AccountLiquidator page and classes, separated out from Liquidation page.
2021-04-27 12:02:05 +01:00
Geoff Taylor
4f6890fe1c
Added argument parsing to liquidator command.
2021-04-27 10:53:43 +01:00
Geoff Taylor
acf2ff5da6
Renamed Classes.ipynb to BaseModel.ipynb. Adjusted all imports of it.
2021-04-27 09:41:22 +01:00
Geoff Taylor
482f759b11
Added start of a runnable 'liquidator' command.
2021-04-26 17:09:35 +01:00
Geoff Taylor
1c6c81cc0d
Added logging objects to classes.
2021-04-26 16:43:40 +01:00
Geoff Taylor
add7f5648c
Trying to be clearer about liquidation balances.
2021-04-26 16:02:53 +01:00
Geoff Taylor
5079995361
Pre-alpha: now tries to send PartialLiquidate transaction.
...
In addition:
* Fixed problem calculating balances
* Added References section to README
* Added user account test to AccountScout
* Tidied up Pandas DataFrame output
* Added balance output to ShowMyAccount
2021-04-23 18:15:44 +01:00
Geoff Taylor
e8e5074b0a
Now provide additional Context objects that can explicitly use Solana's or Serums RPC servers.
2021-04-23 12:08:33 +01:00
Geoff Taylor
38ac769e80
Added new sections to Pandas notebook for liquidatable accounts and ripe mangoes.
2021-04-23 12:07:10 +01:00
Geoff Taylor
e067e4a988
Added running emoji ( 🏃 ) to Running headers.
2021-04-23 09:46:43 +01:00
Geoff Taylor
12c4dd1281
Added support links to every notebook.
2021-04-23 09:28:09 +01:00
Geoff Taylor
158e263242
Now builds Force Cancel and Partial Liquidate instructions.
2021-04-22 20:03:34 +01:00
Geoff Taylor
7d08e64f51
TOC and text update.
2021-04-22 15:28:02 +01:00
Geoff Taylor
87477784a7
Added custom CSS to fix a cell width problem when TOC showing.
2021-04-22 15:13:23 +01:00
Geoff Taylor
3928331cc3
Reformatted some header text and added TOC on all pages.
2021-04-22 14:28:32 +01:00
Geoff Taylor
081ca5d599
Added more text to AccountScout descriptions.
2021-04-22 13:45:06 +01:00
Geoff Taylor
3d6f24aee9
Working through liquidation, adding instructions.
...
- Moved AccountInfo to Context.ipynb to avoid dependency problems from Context to AccountInfo when Classes depends on Context
- Moved AccountInfo.load() operation into Context
- Expanded use of BalanceSheet - can now get a BalanceSheet for each token, either in native token ints or using current prices. Previous get_balance_sheet is now get_balance_sheet_totals()
- Changed Context's fetch_token_balance() to sum all token accounts with that mint and owner, not just pick the first one.
- Added Context.fetch_largest_token_account_for_owner() to efficiently pick a single token account from all those with the same owner and mint.
- Changed wallet file format and default filename to be more consistent with other Solana programs.
- Added an AccountScout notebook to verify an account has been setup properly for using the liquidator. It can print out a nice report as well.
- Added an Instructions notebook to gather the builders for the underlying instructions that will be sent to Solana.
- Added a Liquidation notebook to gather information about the liquidation process and as a place to add liquidation code in the future. (This is very rough.)
2021-04-22 13:19:34 +01:00