@firefly-exchange/firefly-client
Version:
The Firefly Client Library allows traders to sign, create, retrieve and listen to orders on Firefly Exchange.
43 lines • 2.2 kB
JavaScript
/**
* Posts an order to exchange VIA KMS. Creates the signed order and places it to exchange,
* without requiring two separate function calls.
*/
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
/* eslint-disable no-console */
const ethers_aws_kms_signer_1 = require("ethers-aws-kms-signer");
const index_1 = require("../index");
function main() {
return __awaiter(this, void 0, void 0, function* () {
// for keyId input the arn of the kms key that have to be used.
const kmsSigner = new ethers_aws_kms_signer_1.AwsKmsSigner({
region: "ap-northeast-1",
keyId: "arn:aws:kms:ap-northxxxxx",
});
const client = new index_1.FireflyClient(true, index_1.Networks.TESTNET_ARBITRUM, kmsSigner); // passing isTermAccepted = true for compliance and authorizarion
yield client.init();
client.addMarket(index_1.MARKET_SYMBOLS.ETH);
const ethLeverage = yield client.getUserDefaultLeverage(index_1.MARKET_SYMBOLS.ETH);
// KMS key provided will be used to sign this order and submit it to exchange
const response = yield client.postOrder({
symbol: index_1.MARKET_SYMBOLS.ETH,
price: 50,
quantity: 0.5,
side: index_1.ORDER_SIDE.BUY,
leverage: ethLeverage,
orderType: index_1.ORDER_TYPE.LIMIT,
});
console.log(response.data);
});
}
main().then().catch(console.warn);
//# sourceMappingURL=22-postOrderKMS.js.map
;