add hedge

master
TZGyn 9 months ago
parent fe615bd475
commit b0fcbca266
Signed by: TZGyn
GPG Key ID: 122EAF77AE81FD4A

@ -22,6 +22,7 @@ export const POST = async ({ locals, request }) => {
leverage: z.string().optional(),
takeProfit: z.string().optional(),
stopLoss: z.string().optional(),
hedge: z.enum(['true', 'false']).optional(),
})
const percentSchema = z.object({
type: z.literal('Percent'),
@ -35,6 +36,7 @@ export const POST = async ({ locals, request }) => {
leverage: z.string().default('1'),
takeProfitPercent: z.string().optional(),
stopLossPercent: z.string().optional(),
hedge: z.enum(['true', 'false']).optional(),
// tpslDecimalPoint: z.string().default('1'),
})
const closePositionSchema = z.object({
@ -42,6 +44,7 @@ export const POST = async ({ locals, request }) => {
key: z.string(),
secret: z.string(),
symbol: z.string(),
hedge: z.enum(['true', 'false']).optional(),
})
const form = z
.union([flatSchema, percentSchema, closePositionSchema])
@ -52,7 +55,7 @@ export const POST = async ({ locals, request }) => {
return json({}, { status: 400 })
}
const { key, secret, symbol } = form.data
const { key, secret, symbol, hedge } = form.data
try {
let qty
@ -75,6 +78,13 @@ export const POST = async ({ locals, request }) => {
demoTrading: true,
})
if (hedge && hedge === 'true') {
client.switchPositionMode({
category: 'linear',
mode: 3,
})
}
if (form.data.type === 'Flat') {
qty = (
Number(form.data.qty) * Number(form.data.leverage || '1')

Loading…
Cancel
Save