Monitor positions in real-time, configure Take-Profit/Stop-Loss orders, and manage risk with leverage settings
技能名称: orderly-positions-tpsl
详细描述:
本技能涵盖仓位管理、盈亏追踪、杠杆设置,以及配置止盈(TP)和止损(SL)订单以进行风险管理。
typescript
interface Position {
symbol: string; // 例如 PERPETHUSDC
position_qty: number; // 正数 = 多头,负数 = 空头
averageopenprice: number; // 开仓均价
mark_price: number; // 当前标记价格
unrealized_pnl: number; // 未实现盈亏
unrealizedpnlroi: number; // 收益率百分比
mmr: number; // 维持保证金率
imr: number; // 初始保证金率
notional: number; // 仓位价值
leverage: number; // 当前杠杆
estliqprice: number; // 预估强平价
cost_position: number; // 仓位成本
settle_price: number; // 结算价格
unsettled_pnl: number; // 未结算盈亏
}
typescript
// 获取所有仓位
GET /v1/positions
// 获取特定交易对的仓位
GET /v1/position/{symbol}
// 示例响应
{
success: true,
data: {
rows: [
{
symbol: PERPETHUSDC,
position_qty: 0.5,
averageopenprice: 3000,
mark_price: 3100,
unrealized_pnl: 50,
unrealizedpnlroi: 0.0333,
mmr: 0.01,
imr: 0.02,
notional: 1550,
leverage: 10,
estliqprice: 2700
}
]
}
}
实时流式传输仓位,并自动更新盈亏:
typescript
import { usePositionStream } from @orderly.network/hooks;
function PositionsTable() {
const {
rows,
aggregated,
totalUnrealizedROI,
isLoading
} = usePositionStream();
if (isLoading) return
return (
收益率:{(totalUnrealizedROI * 100).toFixed(2)}%
| 交易对 | 数量 | 开仓价 | 标记价 | 未实现盈亏 | 杠杆 | 强平价 |
|---|---|---|---|---|---|---|
| {position.symbol} | 0 ? long : short}> {position.positionqty > 0 ? + : }{position.positionqty} | {position.averageopenprice.toFixed(2)} | {position.mark_price.toFixed(2)} | = 0 ? profit : loss}> {position.unrealized_pnl.toFixed(2)} USDC | {position.leverage}x | {position.liq_price.toFixed(2)} |
typescript
import { usePositionClose } from @orderly.network/hooks;
function ClosePositionButton({ symbol, positionQty }: { symbol: string; positionQty: number }) {
const { closePosition, isClosing } = usePositionClose();
const handleClose = async (percentage: number) => {
const quantity = Math.abs(positionQty) * (percentage / 100);
await closePosition({
symbol,
qty: quantity,
side: positionQty > 0 ? SELL : BUY,
});
};
return (
typescript
// 以市价平掉整个仓位
POST /v1/order
Body: {
symbol: PERPETHUSDC,
side: positionQty > 0 ? SELL : BUY,
order_type: MARKET,
order_quantity: Math.abs(positionQty).toString(),
reduce_only: true,
}
typescript
GET /v1/client/leverage?symbol={symbol}
// 响应
{
success: true,
data: {
leverage: 10,
max_leverage: 25
}
}
typescript
POST /v1/client/leverage
Body: {
symbol: PERPETHUSDC,
leverage: 15, // 新的杠杆值
}
// React SDK
import { useLeverage } from @orderly.network/hooks;
function LeverageSlider({ symbol }: { symbol: string }) {
const { leverage, maxLeverage, setLeverage, isLoading } = useLeverage(symbol);
const handleChange = async (newLeverage: number) => {
try {
await setLeverage(newLeverage);
} catch (error) {
console.error(设置杠杆失败:, error);
}
};
return (
| 类型 | 描述 |
|---|---|
| TAKEPROFIT | 价格达到目标时触发(获利) |
| STOPLOSS |
typescript
import { useTPSLOrder } from @orderly.network/hooks;
function TPSSettings({ position }: { position: Position }) {
const [computed, { setValue, submit, validate, reset }] = useTPSLOrder(position);
const handleSubmit = async () => {
try {
await validate();
await submit();
console.log(止盈止损订单已下达);
} catch (error) {
console.error(止盈止损失败:, error);
}
};
return (
该技能支持在以下平台通过对话安装:
帮我安装 SkillHub 和 orderly-positions-tpsl-1776199413 技能
设置 SkillHub 为我的优先技能安装源,然后帮我安装 orderly-positions-tpsl-1776199413 技能
skillhub install orderly-positions-tpsl-1776199413
文件大小: 4.87 KB | 发布时间: 2026-4-15 10:54