Research
Security News
Malicious npm Packages Inject SSH Backdoors via Typosquatted Libraries
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
@nftperp/sdk
Advanced tools
SDK to interact with the nftperp protocol (docs).
tldr; nftperp is a derivates platform for nfts. for the first time ever, short nfts with leverage
The protocol is currently in BETA on arbitrum mainnet (dapp). it uses fake eth for paper trading, which can be obtained from faucet on website/sdk
For any queries, hop in the community discord and ask away invite link
npm i @nftperp/sdk
Also requires ethers
library
npm i ethers
amm
the nft collection to trade. synonymous to market pair, asset.side
direction of trade. long or short.margin
collateral amount. this is the amount you risk on liquidation.notional
total value of position margin x leverage.mark price
nftperp's price of the asset.index price
actual price of the asset. floor from marketplaces.margin ratio
margin to notional ratio.maintenance margin ratio
minimum margin ratio to be maintained to avoid liquidation.import { ethers } from "ethers";
import { SDK, Instance } from "@nftperp/sdk";
/**
the general rpc url for arb mainnet is "https://arb1.arbitrum.io/rpc"
you can also use a personal one from alchemy (https://www.alchemy.com/)
*/
const provider = new ethers.providers.JsonRpcProvider("<your-rpc-url>");
const wallet = new ethers.Wallet("<your-private-key>", provider);
const nftperp = new SDK({ wallet, instance: Instance.BETA });
await nftperp.useFaucet(); // grants 5 eth
import { Amm, Side } from "@nftperp/sdk";
const hash = await nftperp.openPosition({
amm: Amm.BAYC,
side: Side.BUY,
margin: 0.1, // this means 0.1 eth
leverage: 3,
});
note: currently limited nft collections are supported. to get a list of supported assets do:
console.log(nftperp.getSupportedAssets(Instance.BETA));
/**
[ 'BAYC', 'MOONBIRDS', 'MAYC', 'DOODLES', 'CLONEX' ]
*/
const position = await nftperp.getPosition({
amm: Amm.BAYC,
});
console.log(position);
/**
{
size: 0.003,
margin: 0.1,
leverage: 3,
pnl: 0,
funding: 0,
entryPrice: 82.981,
liquidationPrice: 63.224
}
*/
const hash = await nftperp.closePosition({
amm: Amm.BAYC,
});
const ammInfo = await nftperp.getAmmInfo(Amm.BAYC);
console.log(ammInfo);
/**
{
asset: 'BAYC',
markPrice: 82.795,
indexPrice: 84,
maxLeverage: 5,
maintenanceMarginPercent: 12.5,
fullLiquidationPercent: 10,
previousFundingPercent: -0.662,
nextFundingTime: 1660194024,
openInterest: 3583.484,
openInterestLongs: 2581.935,
openInterestShorts: 1001.548
}
*/
FAQs
SDK for nftperp protocol
The npm package @nftperp/sdk receives a total of 177 weekly downloads. As such, @nftperp/sdk popularity was classified as not popular.
We found that @nftperp/sdk demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 3 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
Security News
MITRE's 2024 CWE Top 25 highlights critical software vulnerabilities like XSS, SQL Injection, and CSRF, reflecting shifts due to a refined ranking methodology.
Security News
In this segment of the Risky Business podcast, Feross Aboukhadijeh and Patrick Gray discuss the challenges of tracking malware discovered in open source softare.