signle
This commit is contained in:
BIN
dist.rar → s.rar
BIN
dist.rar → s.rar
Binary file not shown.
@ -151,3 +151,12 @@ export function aicoinSymbol(params) {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 获取止盈点
|
||||||
|
export function calculate(data) {
|
||||||
|
return request({
|
||||||
|
url: '/api/v1/line-pre-order/calculate',
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
|||||||
@ -331,7 +331,7 @@
|
|||||||
>
|
>
|
||||||
<template #prepend>
|
<template #prepend>
|
||||||
<el-select v-if="inForm.price_pattern === 'aicoin'" v-model="aicoinPrice" placeholder="请选择" style="width: 150px;" @change="onchangeAicoin">
|
<el-select v-if="inForm.price_pattern === 'aicoin'" v-model="aicoinPrice" placeholder="请选择" style="width: 150px;" @change="onchangeAicoin">
|
||||||
<el-option v-for="o in options" :key="o.label" :label="o.label" :value="aicoins[o.value]">
|
<el-option v-for="o in options" :key="o.label" :label="o.label" :value="aicoins[o.value] || ''">
|
||||||
<span style="float: left">{{ o.label }}</span>
|
<span style="float: left">{{ o.label }}</span>
|
||||||
<span style="float: right">{{ aicoins[o.value] || 0 }}</span>
|
<span style="float: right">{{ aicoins[o.value] || 0 }}</span>
|
||||||
</el-option>
|
</el-option>
|
||||||
@ -441,8 +441,8 @@
|
|||||||
<el-radio label="0">直接执行</el-radio>
|
<el-radio label="0">直接执行</el-radio>
|
||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="主单减仓价格百分比" prop="reduce_price">
|
<el-form-item label="主单亏损减仓百分比" prop="reduce_price">
|
||||||
<el-input v-model.number="inForm.reduce_price" type="number" placeholder="主单减仓价格百分比" />
|
<el-input v-model.number="inForm.reduce_price" type="number" placeholder="主单亏损减仓百分比" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="主单减仓数量百分比" prop="reduce_num">
|
<el-form-item label="主单减仓数量百分比" prop="reduce_num">
|
||||||
<el-input v-model.number="inForm.reduce_num" type="number" placeholder="主单减仓数量百分比" />
|
<el-input v-model.number="inForm.reduce_num" type="number" placeholder="主单减仓数量百分比" />
|
||||||
@ -455,7 +455,8 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="4"><el-form-item label="主单加仓配置" /></el-col>
|
<el-col :span="4"><el-form-item label="主单加仓配置" /></el-col>
|
||||||
<el-col :span="20"><el-button type="primary" size="mini" @click="onAddExt(0)">新增</el-button></el-col>
|
<el-col :span="2"><el-button type="primary" size="mini" @click="onAddExt(0)">新增</el-button></el-col>
|
||||||
|
<el-col v-if="form.type===1" :span="2"><el-button type="primary" size="mini" :disabled="inForm.ext && inForm.ext.length===0" @click="onCalculate">计算</el-button></el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<div v-for="(item,index) in inForm.ext" :key="index" class="exts">
|
<div v-for="(item,index) in inForm.ext" :key="index" class="exts">
|
||||||
<el-row :gutter="20">
|
<el-row :gutter="20">
|
||||||
@ -470,18 +471,22 @@
|
|||||||
<div style="margin-bottom: 8px;">加仓方式</div>
|
<div style="margin-bottom: 8px;">加仓方式</div>
|
||||||
<el-radio-group v-model="item.addPositionType" size="mini">
|
<el-radio-group v-model="item.addPositionType" size="mini">
|
||||||
<el-radio :label="1">百分比</el-radio>
|
<el-radio :label="1">百分比</el-radio>
|
||||||
<el-radio :label="0">实际金额</el-radio>
|
<el-radio :label="2">实际金额</el-radio>
|
||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
<el-col :span="5">加仓下跌百分比<el-input v-model.number="item.addPositionPriceRatio" size="mini" type="number" placeholder="加仓价格百分比" /></el-col>
|
||||||
<el-col :span="5">加仓数值<el-input v-model.number="item.addPositionVal" size="mini" type="number" placeholder="加仓数值" /></el-col>
|
<el-col :span="5">加仓数值<el-input v-model.number="item.addPositionVal" size="mini" type="number" placeholder="加仓数值" /></el-col>
|
||||||
<el-col :span="5">加仓价格百分比<el-input v-model.number="item.addPositionPriceRatio" size="mini" type="number" placeholder="加仓价格百分比" /></el-col>
|
<el-col :span="4">加仓后止盈价百分比<el-input v-model.number="item.takeProfitRatio" size="mini" type="number" placeholder="止盈百分比">
|
||||||
<el-col :span="4">加仓后止盈百分比<el-input v-model.number="item.takeProfitRatio" size="mini" type="number" placeholder="止盈百分比" /></el-col>
|
<template v-if="form.type===1" #append>{{ ext.length ? ext[index].reTakeProfitRatio : 0 }}</template>
|
||||||
|
</el-input></el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row :gutter="20" style="margin-top: 10px;">
|
<el-row :gutter="20" style="margin-top: 10px;">
|
||||||
<el-col :span="5">减仓价格百分比<el-input v-model.number="item.reducePriceRatio" size="mini" type="number" placeholder="减仓价格百分比" /></el-col>
|
<el-col :span="5">减仓下跌百分比<el-input v-model.number="item.reducePriceRatio" size="mini" type="number" placeholder="减仓价格百分比" /></el-col>
|
||||||
<el-col :span="5">减仓数量百分比<el-input v-model.number="item.reduceNumRatio" size="mini" type="number" placeholder="减仓数量百分比" /></el-col>
|
<el-col :span="5">减仓数量百分比<el-input v-model.number="item.reduceNumRatio" size="mini" type="number" placeholder="减仓数量百分比" /></el-col>
|
||||||
<el-col :span="5">减仓后止盈百分比<el-input v-model.number="item.reduceTakeProfitRatio" size="mini" type="number" placeholder="减仓后止盈百分比" /></el-col>
|
<el-col :span="5">减仓后止盈价百分比<el-input v-model.number="item.reduceTakeProfitRatio" size="mini" type="number" placeholder="减仓后止盈百分比">
|
||||||
<el-col :span="5">减仓后止损百分比<el-input v-model.number="item.reduceStopLossRatio" size="mini" type="number" placeholder="减仓后止损百分比" /></el-col>
|
<template v-if="form.type===1" #append>{{ ext.length ? ext[index].reduceReTakeProfitRatio : 0 }}</template>
|
||||||
|
</el-input></el-col>
|
||||||
|
<el-col :span="5">减仓后止损价百分比<el-input v-model.number="item.reduceStopLossRatio" size="mini" type="number" placeholder="减仓后止损百分比" /></el-col>
|
||||||
<el-col :span="4"><div style="margin-bottom: 14px;" /><el-button size="mini" type="danger" @click="onAddExt(1,index)">删除</el-button></el-col>
|
<el-col :span="4"><div style="margin-bottom: 14px;" /><el-button size="mini" type="danger" @click="onAddExt(1,index)">删除</el-button></el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
</div>
|
</div>
|
||||||
@ -522,7 +527,7 @@ import { listLineSymbol, getSameSymbol } from '@/api/admin/line-symbol'
|
|||||||
import { addLineOrderTemplateLogs, delLineOrderTemplateLogs, getLineOrderTemplateLogs, listLineOrderTemplateLogs, updateLineOrderTemplateLogs } from '@/api/admin/line-order-template-logs'
|
import { addLineOrderTemplateLogs, delLineOrderTemplateLogs, getLineOrderTemplateLogs, listLineOrderTemplateLogs, updateLineOrderTemplateLogs } from '@/api/admin/line-order-template-logs'
|
||||||
import { listLineSymbolGroup } from '@/api/admin/line-symbol-group'
|
import { listLineSymbolGroup } from '@/api/admin/line-symbol-group'
|
||||||
import { getMainUser, listLineApiUser } from '@/api/admin/line-api-user'
|
import { getMainUser, listLineApiUser } from '@/api/admin/line-api-user'
|
||||||
import { aicoinSymbol, quickAddPreOrder } from '@/api/admin/line-pre-order'
|
import { calculate, aicoinSymbol, quickAddPreOrder } from '@/api/admin/line-pre-order'
|
||||||
export default {
|
export default {
|
||||||
name: 'LineOrderTemplateLogs',
|
name: 'LineOrderTemplateLogs',
|
||||||
components: {
|
components: {
|
||||||
@ -603,7 +608,8 @@ export default {
|
|||||||
lineTotal: 0,
|
lineTotal: 0,
|
||||||
exchangeTypes: [],
|
exchangeTypes: [],
|
||||||
aicoins: {},
|
aicoins: {},
|
||||||
aicoinPrice: undefined
|
aicoinPrice: undefined,
|
||||||
|
ext: []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
@ -815,6 +821,7 @@ export default {
|
|||||||
/** 修改按钮操作 */
|
/** 修改按钮操作 */
|
||||||
handleUpdate(row) {
|
handleUpdate(row) {
|
||||||
this.reset()
|
this.reset()
|
||||||
|
this.ext = []
|
||||||
const id =
|
const id =
|
||||||
row.id || this.ids
|
row.id || this.ids
|
||||||
getLineOrderTemplateLogs(id).then(response => {
|
getLineOrderTemplateLogs(id).then(response => {
|
||||||
@ -825,6 +832,7 @@ export default {
|
|||||||
this.onchangePattern(false)
|
this.onchangePattern(false)
|
||||||
this.getListLineApiUser()
|
this.getListLineApiUser()
|
||||||
this.form.type === 2 && this.getSymbolGroup(this.inForm.symbol_type)
|
this.form.type === 2 && this.getSymbolGroup(this.inForm.symbol_type)
|
||||||
|
this.onCalculate()
|
||||||
this.open = true
|
this.open = true
|
||||||
this.title = '修改委托下单模板'
|
this.title = '修改委托下单模板'
|
||||||
this.isEdit = true
|
this.isEdit = true
|
||||||
@ -908,6 +916,12 @@ export default {
|
|||||||
}
|
}
|
||||||
}).catch(function() {
|
}).catch(function() {
|
||||||
})
|
})
|
||||||
|
},
|
||||||
|
// 计算需要回本利润
|
||||||
|
onCalculate() {
|
||||||
|
calculate({ ...this.inForm, api_id: this.inForm.api_id.toString() }).then(res => {
|
||||||
|
this.ext = res?.data?.ext || []
|
||||||
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -630,7 +630,7 @@
|
|||||||
>
|
>
|
||||||
<template #prepend>
|
<template #prepend>
|
||||||
<el-select v-if="form.price_pattern === 'aicoin'" v-model="aicoinPrice" placeholder="请选择" style="width: 150px;" @change="onchangeAicoin">
|
<el-select v-if="form.price_pattern === 'aicoin'" v-model="aicoinPrice" placeholder="请选择" style="width: 150px;" @change="onchangeAicoin">
|
||||||
<el-option v-for="o in options" :key="o.label" :label="o.label" :value="aicoins[o.value]">
|
<el-option v-for="o in options" :key="o.label" :label="o.label" :value="aicoins[o.value] || ''">
|
||||||
<span style="float: left">{{ o.label }}</span>
|
<span style="float: left">{{ o.label }}</span>
|
||||||
<span style="float: right">{{ aicoins[o.value] || 0 }}</span>
|
<span style="float: right">{{ aicoins[o.value] || 0 }}</span>
|
||||||
</el-option>
|
</el-option>
|
||||||
@ -770,8 +770,8 @@
|
|||||||
<el-radio label="0">直接执行</el-radio>
|
<el-radio label="0">直接执行</el-radio>
|
||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="主单减仓价格百分比" prop="reduce_price">
|
<el-form-item label="主单亏损减仓百分比" prop="reduce_price">
|
||||||
<el-input v-model.number="form.reduce_price" type="number" placeholder="主单减仓价格百分比" />
|
<el-input v-model.number="form.reduce_price" type="number" placeholder="主单亏损减仓百分比" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="主单减仓数量百分比" prop="reduce_num">
|
<el-form-item label="主单减仓数量百分比" prop="reduce_num">
|
||||||
<el-input v-model.number="form.reduce_num" type="number" placeholder="主单减仓数量百分比" />
|
<el-input v-model.number="form.reduce_num" type="number" placeholder="主单减仓数量百分比" />
|
||||||
@ -784,7 +784,8 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="4"><el-form-item label="主单加仓配置" /></el-col>
|
<el-col :span="4"><el-form-item label="主单加仓配置" /></el-col>
|
||||||
<el-col :span="20"><el-button type="primary" size="mini" @click="onAddExt(0)">新增</el-button></el-col>
|
<el-col :span="2"><el-button type="primary" size="mini" @click="onAddExt(0)">新增</el-button></el-col>
|
||||||
|
<el-col v-if="title!=='批量添加'" :span="2"><el-button type="primary" size="mini" :disabled="form.ext && form.ext.length===0" @click="onCalculate">计算</el-button></el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<div v-for="(item,index) in form.ext" :key="index" class="exts">
|
<div v-for="(item,index) in form.ext" :key="index" class="exts">
|
||||||
<el-row :gutter="20">
|
<el-row :gutter="20">
|
||||||
@ -799,18 +800,22 @@
|
|||||||
<div style="margin-bottom: 8px;">加仓方式</div>
|
<div style="margin-bottom: 8px;">加仓方式</div>
|
||||||
<el-radio-group v-model="item.addPositionType" size="mini">
|
<el-radio-group v-model="item.addPositionType" size="mini">
|
||||||
<el-radio :label="1">百分比</el-radio>
|
<el-radio :label="1">百分比</el-radio>
|
||||||
<el-radio :label="0">实际金额</el-radio>
|
<el-radio :label="2">实际金额</el-radio>
|
||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
<el-col :span="5">加仓下跌百分比<el-input v-model.number="item.addPositionPriceRatio" size="mini" type="number" placeholder="加仓下跌百分比" /></el-col>
|
||||||
<el-col :span="5">加仓数值<el-input v-model.number="item.addPositionVal" size="mini" type="number" placeholder="加仓数值" /></el-col>
|
<el-col :span="5">加仓数值<el-input v-model.number="item.addPositionVal" size="mini" type="number" placeholder="加仓数值" /></el-col>
|
||||||
<el-col :span="5">加仓价格百分比<el-input v-model.number="item.addPositionPriceRatio" size="mini" type="number" placeholder="加仓价格百分比" /></el-col>
|
<el-col :span="4">加仓后止盈价百分比<el-input v-model.number="item.takeProfitRatio" size="mini" type="number" placeholder="止盈百分比">
|
||||||
<el-col :span="4">加仓后止盈百分比<el-input v-model.number="item.takeProfitRatio" size="mini" type="number" placeholder="止盈百分比" /></el-col>
|
<template v-if="title!=='批量添加'" #append>{{ ext.length ? ext[index].reTakeProfitRatio : 0 }}</template>
|
||||||
|
</el-input></el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row :gutter="20" style="margin-top: 10px;">
|
<el-row :gutter="20" style="margin-top: 10px;">
|
||||||
<el-col :span="5">减仓价格百分比<el-input v-model.number="item.reducePriceRatio" size="mini" type="number" placeholder="减仓价格百分比" /></el-col>
|
<el-col :span="5">减仓下跌百分比<el-input v-model.number="item.reducePriceRatio" size="mini" type="number" placeholder="减仓下跌百分比" /></el-col>
|
||||||
<el-col :span="5">减仓数量百分比<el-input v-model.number="item.reduceNumRatio" size="mini" type="number" placeholder="减仓数量百分比" /></el-col>
|
<el-col :span="5">减仓数量百分比<el-input v-model.number="item.reduceNumRatio" size="mini" type="number" placeholder="减仓数量百分比" /></el-col>
|
||||||
<el-col :span="5">减仓后止盈百分比<el-input v-model.number="item.reduceTakeProfitRatio" size="mini" type="number" placeholder="减仓后止盈百分比" /></el-col>
|
<el-col :span="5">减仓后止盈价百分比<el-input v-model.number="item.reduceTakeProfitRatio" size="mini" type="number" placeholder="减仓后止盈百分比">
|
||||||
<el-col :span="5">减仓后止损百分比<el-input v-model.number="item.reduceStopLossRatio" size="mini" type="number" placeholder="减仓后止损百分比" /></el-col>
|
<template v-if="title!=='批量添加'" #append>{{ ext.length ? ext[index].reduceReTakeProfitRatio : 0 }}</template>
|
||||||
|
</el-input></el-col>
|
||||||
|
<el-col :span="5">减仓后止损价百分比<el-input v-model.number="item.reduceStopLossRatio" size="mini" type="number" placeholder="减仓后止损百分比" /></el-col>
|
||||||
<el-col :span="4"><div style="margin-bottom: 14px;" /><el-button size="mini" type="danger" @click="onAddExt(1,index)">删除</el-button></el-col>
|
<el-col :span="4"><div style="margin-bottom: 14px;" /><el-button size="mini" type="danger" @click="onAddExt(1,index)">删除</el-button></el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
</div>
|
</div>
|
||||||
@ -1237,7 +1242,7 @@
|
|||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { listLineSymbol, getSameSymbol } from '@/api/admin/line-symbol'
|
import { listLineSymbol, getSameSymbol } from '@/api/admin/line-symbol'
|
||||||
import { aicoinSymbol, clearUnTriggered, clearAll, closePosition, manuallyCover, orderMarginType, orderLever, batchAddOrder, addOrder, delLinePreOrder, getLinePreOrder, listLinePreOrder, updateLinePreOrder, getChildOrder, cancelOpenOrder } from '@/api/admin/line-pre-order'
|
import { calculate, aicoinSymbol, clearUnTriggered, clearAll, closePosition, manuallyCover, orderMarginType, orderLever, batchAddOrder, addOrder, delLinePreOrder, getLinePreOrder, listLinePreOrder, updateLinePreOrder, getChildOrder, cancelOpenOrder } from '@/api/admin/line-pre-order'
|
||||||
import { getMainUser, listLineApiUser } from '@/api/admin/line-api-user'
|
import { getMainUser, listLineApiUser } from '@/api/admin/line-api-user'
|
||||||
import { listLineSymbolGroup } from '@/api/admin/line-symbol-group'
|
import { listLineSymbolGroup } from '@/api/admin/line-symbol-group'
|
||||||
export default {
|
export default {
|
||||||
@ -1425,7 +1430,9 @@ export default {
|
|||||||
btnLoading: false,
|
btnLoading: false,
|
||||||
exchangeTypes: [],
|
exchangeTypes: [],
|
||||||
aicoins: {},
|
aicoins: {},
|
||||||
aicoinPrice: ''
|
aicoinPrice: '',
|
||||||
|
// 回本止盈点
|
||||||
|
ext: []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
@ -1922,6 +1929,7 @@ export default {
|
|||||||
},
|
},
|
||||||
/** 新增按钮操作 */
|
/** 新增按钮操作 */
|
||||||
handleAdd(title) {
|
handleAdd(title) {
|
||||||
|
this.ext = []
|
||||||
this.title = title || '添加委托管理'
|
this.title = title || '添加委托管理'
|
||||||
this.reset()
|
this.reset()
|
||||||
this.getListLineApiUser()
|
this.getListLineApiUser()
|
||||||
@ -2004,7 +2012,7 @@ export default {
|
|||||||
if (typeof row === 'string') {
|
if (typeof row === 'string') {
|
||||||
this.$refs[row].validate((valid) => {
|
this.$refs[row].validate((valid) => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
cancelOpenOrder(this.cancelForm)
|
cancelOpenOrder({ ...this.cancelForm, exchangeType: row.exchangeType })
|
||||||
.then((response) => {
|
.then((response) => {
|
||||||
if (response.code === 200) {
|
if (response.code === 200) {
|
||||||
this.msgSuccess(response.msg)
|
this.msgSuccess(response.msg)
|
||||||
@ -2088,6 +2096,12 @@ export default {
|
|||||||
}
|
}
|
||||||
}).catch(function() {
|
}).catch(function() {
|
||||||
})
|
})
|
||||||
|
},
|
||||||
|
// 计算需要回本利润
|
||||||
|
onCalculate() {
|
||||||
|
calculate({ ...this.form, api_id: this.form.api_id.toString() }).then(res => {
|
||||||
|
this.ext = res?.data?.ext || []
|
||||||
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user