Seorang pemula ingin menggunakan sinyal trading view untuk memperdagangkan koin secara otomatis atau kontrak permanen btc, setelah mendistribusikan robot muncul, kesalahan kontrak Ct ditetapkan sebagai kosong. Kode ini adalah salinan dari TradingViewWebHook Strategi Pelaksanaan Sinyal (Pendidikan) /*
Format string perintah interaktif action:amount action: buy, sell, long, short, cover_long, cover_short, spk, bpk
Jenis Bursa Variabel eType diambil: 0 spot, 1 futures
Link untuk dokumen TVhttps://www.tradingview.com/pine-script-docs/en/v4/Quickstart_guide.html https://cn.tradingview.com/chart/8xfTuX7F/
TV webhook Mengirim permintaanhttps://www.fmz.cn/api/v1?access_key=xxx&secret_key=yyyy&method=CommandRobot&args=[186515,
Perpustakaan referensi Referensi Perpustakaan Perdagangan Mata Uang Digital */
Parameter /var IsMarketOrder = false / var QuotePrecision = 2 / var BasePrecision = 2
// Parameter berjangka / var Ct =
Variabel global
var BUY = membeli
var SELL = selang selang
var LONG = burung merpati
var SHORT = pendek pendek
var COVER_LONG = penutup panjang
var COVER_SHORT = penutup_pendek
var SPK =
fungsi main (() { // Hapus log, jika tidak diperlukan, bisa dihapus LogReset ((1))
// 设置精度
exchange.SetPrecision(QuotePrecision, BasePrecision)
// 识别期货还是现货
var eType = 0
var eName = exchange.GetName()
var patt = /Futures_/
if (patt.test(eName)) {
Log("添加的交易所为期货交易所:", eName, "#FF0000")
eType = 1
if (Ct == "") {
throw "Ct 合约设置为空"
} else {
Log(exchange.SetContractType(Ct), "设置合约:", Ct, "#FF0000")
}
} else {
Log("添加的交易所为现货交易所:", eName, "#32CD32")
}
var lastMsg = ""
var acc = _C(exchange.GetAccount)
while(true) {
var cmd = GetCommand()
if (cmd) {
// 检测交互命令
lastMsg = "命令:" + cmd + "时间:" + _D()
var arr = cmd.split(":")
if (arr.length != 2) {
Log("cmd信息有误:", cmd, "#FF0000")
continue
}
var action = arr[0]
var amount = parseFloat(arr[1])
if (eType == 0) {
if (action == BUY) {
var buyInfo = IsMarketOrder ? exchange.Buy(-1, amount) : $.Buy(amount)
Log("buyInfo:", buyInfo)
} else if (action == SELL) {
var sellInfo = IsMarketOrder ? exchange.Sell(-1, amount) : $.Sell(amount)
Log("sellInfo:", sellInfo)
} else {
Log("现货交易所不支持!", "#FF0000")
}
} else if (eType == 1) {
var tradeInfo = null
var ticker = _C(exchange.GetTicker)
if (action == LONG) {
exchange.SetDirection("buy")
tradeInfo = IsMarketOrder ? exchange.Buy(-1, amount) : exchange.Buy(ticker.Sell, amount)
} else if (action == SHORT) {
exchange.SetDirection("sell")
tradeInfo = IsMarketOrder ? exchange.Sell(-1, amount) : exchange.Sell(ticker.Buy, amount)
} else if (action == COVER_LONG) {
exchange.SetDirection("closebuy")
tradeInfo = IsMarketOrder ? exchange.Sell(-1, amount) : exchange.Sell(ticker.Buy, amount)
} else if (action == COVER_SHORT) {
exchange.SetDirection("closesell")
tradeInfo = IsMarketOrder ? exchange.Buy(-1, amount) : exchange.Buy(ticker.Sell, amount)
} else if (action == SPK) { // 卖出平多仓,卖出开空仓
exchange.SetDirection("closebuy")
var tradeInfo1 = IsMarketOrder ? exchange.Sell(-1, amount) : exchange.Sell(ticker.Buy, amount)
exchange.SetDirection("sell")
var tradeInfo2 = IsMarketOrder ? exchange.Sell(-1, amount) : exchange.Sell(ticker.Buy, amount)
tradeInfo = [tradeInfo1, tradeInfo2]
} else if (action == BPK) { // 买入平空仓,买入开多仓
exchange.SetDirection("closesell")
var tradeInfo1 = IsMarketOrder ? exchange.Buy(-1, amount) : exchange.Buy(ticker.Sell, amount)
exchange.SetDirection("buy")
var tradeInfo2 = IsMarketOrder ? exchange.Buy(-1, amount) : exchange.Buy(ticker.Sell, amount)
tradeInfo = [tradeInfo1, tradeInfo2]
} else {
Log("期货交易所不支持!", "#FF0000")
}
if (tradeInfo) {
Log("tradeInfo:", tradeInfo)
}
} else {
throw "eType error, eType:" + eType
}
acc = _C(exchange.GetAccount)
}
var tbl = {
type : "table",
title : "状态信息",
cols : ["数据"],
rows : []
}
tbl.rows.push([JSON.stringify(acc)])
LogStatus(_D(), eName, "上次接收到的命令:", lastMsg, "\n", "`" + JSON.stringify(tbl) + "`")
Sleep(1000)
}
}
Raja Iblis Hip HopTidak ada informasi yang salah, bagaimana caranya?
Nihao153159Bagaimana cara mengatur kontrak permanen btcusdt, dan perubahan baris kode apa yang harus dilakukan?
Nihao153159Robot langsung yang sepenuhnya disetel pada video stasiun b juga tidak bisa berjalan, buynull kembali sellnull setelah menerima instruksi transaksi
RumputTidak cukup dana di rekening
Nihao153159Robot berjangka yang salah adalah 2021-01-02 23:40:08 Informasi Bursa Berjangka Tidak Didukung! 2021-01-02 23:40:05 Informasi Bursa Berjangka Tidak Didukung! 2021-01-02 23:38:23 Informasi {"InstrumentID:"BTCUSDT","instrument:"BTCUSDT"} Kontrak pengaturan: swap 2021-01-02 23:38:23 Informasi Ditambahkan untuk bursa futures: Futures_Binance Terima kasih banyak.
Nihao153159Tanggal Platform Jenis Harga Jumlah Informasi 2021-01-02 23:39:01 Informasi sellInfo: null 2021-01-02 23:39:01 Binance Kesalahan Sell ((-1, 0.01): 400: {"code":-2010, "msg:"Account has insufficient balance for requested action"} 2021-01-02 23:38:53 Informasi buyInfo: null 2021-01-02 23:38:53 Binance Kesalahan Buy ((-1, 0.01): 400: {"code":-2010, "msg:"Account has insufficient balance for requested action"}