在学习Pine语言中的strategy()策略制定时,也经常被平仓结束持仓订单给困扰,因为方法有好几种,不能分辨到底用哪一种更合适。今天把三种退出订单()平仓的方法做个区分。 三个功能非常相近的退出订单函数是close(),close_all()和exit()。 首先看下官方手册对三个函数的解释: 1、strateg.close() 这是从具有指定ID名称的条目持仓订单退出的命令。 如果有多个具有相同ID的挂单,则所有这些订单将立即退出。 如果在命令被触发时没有具有指定ID的持仓订单,该命令将不生效。 该命令使用市场订单平仓。 每个持仓订单均由单独的市场订单退出。(这里的市场订单我理解就是市场价平仓) 总结一下: strategy.close 如果有多个具有相同ID的持仓,则所有这些持仓订单将立即退出(平仓)。 用法: strategy.close(id, when) ,其中“id”是必填项,而“when”是可选项,代表持仓订单关闭的条件,但如果括号内不填“when”,则strategy.close上面要有if语句来确定持仓订单关闭的条件。 这一段代码如下:
解释就是:如果满足条件longCondition1,则开始做多。如果情况满足条件shortCondition,则以市场价平仓。 其中的做多条件和平仓条件都是自己定义的,以上代码中平仓条件shortCondition是111日均线上穿2倍的350日均线的时候。 2、strategy.close_all_ 是退出当前所有持有的市场头寸使其平仓的命令: 如果在命令被触发时没有开放的市场头寸,该命令将不会生效。 用法: strategy.close_all(when),其中“when”是确定平仓条件。 上图中:
指的是当开盘价小于收盘价时,平掉所有持仓,并且备注“退出所有持仓”。 二者区别: 实际上,如果如果没有同时在同一个方向上多个开单(同时持有多个多单或空单),则这两个功能将执行相同的操作。只有当同时持有多个同向单子时,才能开始看到差异。 3、strategy.exit() 意思是: 这是退出特定持仓或整个市场持仓头寸的命令。 如果具有相同ID名称的持仓订单已经存在,则可以修改该订单。 如果以下所有参数“ profit”,“ limit”,“ loss”,“ stop”,“ trail_points”,“ trail_offset”均为“ NaN”,则该命令将失败。即如果这些条件为空,则推出订单命令失效。即必须有这些条件之一。 用法: strategy.exit(id, from_entry, qty, qty_percent, profit, limit, loss, stop, trail_price, trail_points, trail_offset, oca_name, comment, when) 总结: 如果您要使用市场价平仓,则应使用strategy.close()。
解释就是:如果满足条件longCondition1,则开始做多。如果情况满足条件shortCondition,则以最高价与最低价之和的二分之一价格平仓。 有想制定自己的指标和交易策略的伙伴,欢迎大家添加微信jinvlog交流。 注册Tradingview平台,点击Tradingview。 金金的分区间定投最近已经停止定投,等待更高位置,对分区间定投不了解的可以点击链接: 考虑周期的定投——才是最适合普通人的投资方法 —- 编译者/作者:金金 玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。 |
Pine语言快速入门(五)三种退出订单(平仓)的方法
2020-11-05 金金 来源:区块链网络
LOADING...
相关阅读:
- 火币上线WOO充值、持仓、上新挖矿三重奖励900万WOO2020-10-29
- Coinbase在比特币增长中面临破坏2020-10-28
- 币圈轧路机:灰度再次持仓大饼再创新高顺势而为剑指140002020-10-28
- Gate.io “芝麻开门周周利”BTC、ETH、USDT持仓理财(周五场)第九期今日2020-10-10
- SushiSwap意外地帮助了Uniswap使后者变得更加强大。期货市场持仓量的增加2020-10-02