Merge pull request #20 from ricardojmendez/commitment-level

Optional commitment level
This commit is contained in:
Riordan Panayides 2022-04-12 12:52:53 +01:00 committed by GitHub
commit 5c2f027a7a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 1 deletions

View File

@ -66,6 +66,7 @@ This mode never triggers advanced orders.
| `LIAB_LIMIT` | `0.9` | Percentage of your available margin to use when taking on liabilities |
| `MIN_EQUITY` | `0` | Minimum account equity required to liquidate |
| `LIQUIDATABLE_FEED_WEBSOCKET_ADDRESS` | N/A | Websocket URL of the liquidatable-accounts-feed service, see above |
| `COMMITMENT_LEVEL` | `processed` | Commitment level for the connection |
You can add these variables to a `.env` file in the project root to load automatically on liquidator startup. For example:
```bash

View File

@ -67,6 +67,11 @@ const groupIds =
throw new Error(`Group ${groupName} not found`);
})();
// The Triton team recommends using the commitment level `confirmed` in order
// to avoid BlockhashNotFound errors. Adding a parameter.
const commitmentLevel = process.env.COMMITMENT_LEVEL || 'processed'
// Target values to keep in spot, ordered the same as in mango client's ids.json
// Example:
//
@ -98,9 +103,11 @@ const payer = Keypair.fromSecretKey(
),
);
console.log(`Commitment level: ${commitmentLevel}`);
console.log(`Payer: ${payer.publicKey.toBase58()}`);
const rpcEndpoint = process.env.ENDPOINT_URL || config.cluster_urls[cluster];
const connection = new Connection(rpcEndpoint, 'processed' as Commitment);
const connection = new Connection(rpcEndpoint, commitmentLevel as Commitment);
const client = new MangoClient(connection, mangoProgramId);
let mangoSubscriptionId = -1;