Artigo relacionado:https://www.fmz.com/bbs-topic/5533O vídeo do canal B:https://www.bilibili.com/video/BV1Wk4y1k7zz/
/* - 交互命令字符串格式 action:amount action: buy , sell , long , short , cover_long , cover_short, spk , bpk - 交易所类型 eType变量取值: 0 spot , 1 futures - TV文档链接 https://www.tradingview.com/pine-script-docs/en/v4/Quickstart_guide.html https://cn.tradingview.com/chart/8xfTuX7F/ - TV webhook 发送请求 https://www.fmz.com/api/v1?access_key=xxx&secret_key=yyyy&method=CommandRobot&args=[186515,"action:amount"] - 引用类库 引用数字货币交易类库 */ // 参数 // var IsMarketOrder = false // var QuotePrecision = 2 // var BasePrecision = 2 // 期货参数 // var Ct = "" // 全局变量 var BUY = "buy" var SELL = "sell" var LONG = "long" var SHORT = "short" var COVER_LONG = "cover_long" var COVER_SHORT = "cover_short" var SPK = "spk" var BPK = "bpk" function main() { // 清空日志,如不需要,可以删除 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) } }
superãoSe você não entendeu, pode traduzir?
ZZ791377920Qual é o tipo de bolsa que está a ser apoiada?
ZZ791377920A quantidade de transações instantâneas preenchidas é de 10, quando o pedido é feito, a quantidade se torna 10u, onde é o problema de configuração?
O que é isso?ReferenceError: 'QuotePrecision' is not defined at main (__FILE__:13) Não está definido no principal (__FILE__:13)
- Não, não.Pergunte-me se o contrato só pode definir quantidade de transações, como escrever se as transações estão cheias a cada vez.
15937556103Os professores podem enviar uma estratégia completa sobre o contrato?
15937556103/upload/asset/203b175e3c2c22ac9681c.png Por que é que é sempre assim?
Tobey2022Olá, é possível colocar várias transações em um único robô? e, em seguida, adicionar o URL do alerta para o nome do par de transações, um robô executar vários pares de transações alerta
Le7mareslong,short,cover_long,cover_SHORT, será que vou adicionar o webhook separadamente?
Sbwffg198212O que é que isso quer dizer, que a bolsa de futuros não apoia, que eu quero fazer um contrato perpétuo para o Bitcoin BTC_USDT
Sbwffg198212O que é que isso quer dizer, que a bolsa de futuros não apoia, que eu quero fazer um contrato perpétuo para o Bitcoin BTC_USDT
Sbwffg198212/upload/asset/1cd7a606f646b8c0d32be
Em direção oposta ao Q.Meu irmão, você pode publicar um vídeo didático sobre como adicionar e configurar contratos de futuros, com mais detalhes?
Sug210/upload/asset/125e8fed0f51ab1f8122e.jpg Com o comando spk, um erro foi reportado
Céu noturnoComo resolver o problema de TV emitir um alerta e FMZ ocasionalmente não receber o sinal? Especificamente, duas políticas de TV indicam que dois robôs enviam sinais para FMZ ao mesmo tempo, ocasionalmente um robô não recebe.
Península não resfriadaSpk, bpk, você quer adicionar o número? Se o sinal de TV tiver vários alarmes, o número total de alarmes pode ser aberto em uma única vez, como em um plano vazio.
melo23Contract multiplicador onde escolher
Inventor quantificado - sonho pequenoOlhe para o parâmetro da política, se você adicionar um objeto de câmbio de futuros, configure um contrato. Caso contrário, o robô não sabe qual o contrato a operar.
Richie.Olá, por que a configuração do contrato ct está vazia?
Inventor quantificado - sonho pequenoA configuração do "webhook" na TV pode ser alterada, dependendo da variedade.
Inventor quantificado - sonho pequenoA compra do bilhete de preço no mercado, o próximo volume é o valor.
Inventor quantificado - sonho pequenoO que eu acho é que você fez um erro, e depois de verificar a documentação da API, a política está funcionando.
O que é isso?Não é possível mudar a chave novamente, é preciso copiar a política completa para ajustar?
Inventor quantificado - sonho pequenoO código 1 é o API KEY errado, verifique.
O que é isso?Agora eu estou testando dentro da plataforma para fazer um pedido, mas com o API de extensão, um erro é reportado, retornando, code:1, data: [], eu estou acessando diretamente o link, semelhante ao que acontece quando um navegador abre um link.
Inventor quantificado - sonho pequenoNão basta copiar o código, é preciso copiar a estratégia completa.
Inventor quantificado - sonho pequenoA TV envia sinais, escreve o número, a estratégia é o número. Se for hip hop, etc., a estratégia precisa mudar.
Inventor quantificado - sonho pequenoA estratégia em si é um exemplo completo de como executar um futuro, você usou o comando errado, verifique.
Inventor quantificado - sonho pequenoO comando que você usou no seu webhook não é correto, use o comando de futuros e leia o código cuidadosamente.
Tobey2022 好的,已经在众包板块发布了信息,期望你的成果和合作,thanks.
Inventor quantificado - sonho pequenoO que não mudou é que a plataforma pode ser multinacional e que alguns desenvolvedores podem fazer pedidos.
Tobey2022O que você pode fazer é enviar as alterações diretamente para você, porque outras pessoas podem estar familiarizadas com o assunto por algum tempo.
Inventor quantificado - sonho pequenoA plataforma tem um bloco de crowdsourcing onde você pode publicar suas necessidades.
Tobey2022@ChiloChilo Dream, se você pode mudar uma versão dessa estratégia, se possível, é claro que você pode pagar para comprar, espero seus resultados e respostas, obrigado.
Inventor quantificado - sonho pequenoSim, mas essa estratégia precisa ser modificada.
Inventor quantificado - sonho pequenoNão sei bem o que queres dizer.
Le7maresEu definiu quatro alertas em long, short, coverlong e covershort, mas como a estratégia é em si mesma estratégia e não estudo, todas as quatro instruções são ativadas simultaneamente.
Le7maresComo é que se faz a diferença?
Inventor quantificado - sonho pequenoO URL do webhook pode ser identificado.
Le7maresDescobri um problema, recebendo apenas alertas de negociação de indicadores de tradingview, mas a estratégia que escrevi, estabeleceu quatro alertas diferentes, mas não parecia ser reconhecido, quando os sinais são gerados, os quatro sinais são abertos simultaneamente.
Inventor quantificado - sonho pequenoA solicitação de alarme na TV Não. https://www.fmz.com/api/v1?access_key=xxx&secret_key=yyyy&method=CommandRobot&args=[186515, "action:amount"] Não. O que você escreve no local de ação e o que o robô recebe? Não. https://www.fmz.com/api/v1?access_key=xxx&secret_key=yyyy&method=CommandRobot&args=[186515, "long:1"] Não.
Inventor quantificado - sonho pequenoVeja o tutorial inicial do FMZ, para operar a conta de câmbio de futuros, configure o câmbio de futuros e adicione objetos de câmbio de futuros ao robô.
Sbwffg198212/upload/asset/1ccc5603d54593dcba809.png
Sbwffg198212Eu só mudei esses lugares, Deus me ajude a ver onde está errado, eu não vou adicionar objetos de câmbio de futuros, definir contratos em parâmetros, permanentemente é um swap, o valor da moeda é XXX_USD, o valor da U é XXX_USDT.
Inventor quantificado - sonho pequenoAdicione um objeto de câmbio de futuros, o qual define um contrato, o permanente é um swap, o valor da moeda é XXX_USD, o valor da U é XXX_USDT.
Inventor quantificado - sonho pequenoVerifique se o SPK foi chamado sem o estoque.
Inventor quantificado - sonho pequenoO modo de TV direta apresentado na biblioteca da plataforma FMZ, http://www.fmz.com/digest-topic/5969.
Inventor quantificado - sonho pequenoO nível de alavancagem pode ser definido no mercado de câmbio. Ou pode ser definido no código da estratégia antes de fazer uma encomenda.
Inventor quantificado - sonho pequenoO que você precisa saber é que, se você não tem um contrato, você não sabe o que fazer.
Inventor quantificado - sonho pequenoNão sei. https://www.fmz.com/api/v1?access_key=xxx&secret_key=yyyy&method=CommandRobot&args=[186515, "action:amount"] Não sei. A ação pode ser escrita como spk, bpk
Céu noturnoEu gostaria de saber como configurá-los para SPK e BPK, TV.