像专业交易员一样操作?教你使用TradingView编写简单指标

全球投资狂热背景下 , 大家都在寻找更好用更趁手的投资工具 。

像专业交易员一样操作?教你使用TradingView编写简单指标
文章图片
TradingView , 一个几乎所有专业投资者都知道的投资者社区以及图表网站 。 这家创立于2011年的网站 , 在成立5年之后 , 月活跃用户数量达到了100万 。
TradingView拥有大量的数据 , 包括全球证券市场、商品、外汇等在内 。 同时 , 其产品还紧跟市场趋势 。 就在美国散户响应WallStreetBets号召买入白银之时 , TradingView紧急上线了白银等商品超过百年的历史价格走势 。
当然 , 最令加密货币行业用户眼熟的则是Tradingview内嵌于各大交易平台的小组件 , 用户可通过小组件直接查看行情 。
像专业交易员一样操作?教你使用TradingView编写简单指标】Tradingview并不仅仅局限于查看行情 , 其早前推出了自行设计的脚本语言「PineScript」 , 并允许用户创建自定义指标并运行于Tradingview服务器 。
本文 , 律动BlockBeats将教大家从0开始 , 5分钟写出一些简单的指标 。
Coinbase溢价指标
此前律动BlockBeats曾经在《比特币下跌 , 宕机的Coinbase是否在操控比特币市场?》一文中详细介绍了近期几次比特币价格下跌时 , Coinbase平台的比特币价格都低于其他平台 。 并使用TradingView制作了Coinbase溢价图用于展示 , 但是该功能需购买TradingView会员 , 并且还不够直观 。
微博用户「对冲机器」发布的代码可直观展示Coinbase溢价情况 , 律动BlockBeats将以此为例子 , 5分钟简单理解并学会编写简单代码 。

像专业交易员一样操作?教你使用TradingView编写简单指标
文章图片
代码及图片来源微博用户「对冲机器」
代码:
study("CB-BNbasis",overlay=false)
//Usescandleclosesfordifferencesobestaccuracyonlowertimeframs
premium=security("COINBASE:BTCUSD",timeframe.period,close)-security("BINANCE:BTCUSDT",timeframe.period,close)
premiumPercent=(premium/close)*100
plot(premiumPercent,color=iff(premium>=0,color.blue,color.red))
plot(0,color=color.black)
如何编写指标
TradingView主要界面可分为三个区域 , 最上面的行情显示区域、中间的指标区域以及编写代码区域(如不编写将不显示该区域) 。

像专业交易员一样操作?教你使用TradingView编写简单指标
文章图片
TradingView界面
第一行、第二行等标注「//」表示注释 , 方便用户看懂 , 电脑并不会进行编译 。
第五行:study("Coinbase-Binance",overlay=false)
Coinbase-Binance此处表示为该指标在TradingView界面中的名称 。 overlay则是确认需要将该指标添加至何处 , false表示添加至指标区域 , true表示添加至行情显示区域 。
第八行:premium=security("COINBASE:BTCUSD",timeframe.period,close)-security("BINANCE:BTCUSDT",timeframe.period,close)
security("COINBASE:BTCUSD",timeframe.period,close)表示为选择Coinbase交易平台BTC/USD交易对 , 并且以收盘价格作为数据源 。
如选择Bitstamp的BTC/USD的开盘价作为数据源 , 那么可写为security("BITSTAMP:BTCUSD",timeframe.period,open)
open:开盘价
high:最高价
low:最低价
close:收盘价
第十行:premiumPercent=(premium/close)*100
该代码显示为溢价率扩大一百倍后的数值 , 后者close代表当前行情显示区域代币的收盘价 。
当然 , 如果此处更改为premiumPercent=(premium/security("COINBASE:BTCUSD",timeframe.period,close))会更加符合用户使用 。 更改后 , 不管用户将行情切换至任何投资品种上 , 都表示为Coinbase的比特币价格与Binance比特币价格的溢价率 , 即「(Coinabse比特币价格-Binance比特币价格)/Coinbase比特币价格」 。
第十一行:plot(premiumPercent,color=iff(premium>=0,color.blue,color.red))
溢价为大于或等于0时 , 显示为蓝色 , 否则显示为红色 。 颜色可随意更改 , 比如想显示为绿色 , 可将「color.red」更改为「color.green」 。
第十二行:plot(0,color=color.black)
0轴显示为黑色 。
编写交割合约期货溢价率指标
在了解完TradingView指标的编写逻辑之后 , 可以编写一些较为简单的指标 , 比如「交割合约溢价率」 。
以计算Binance6月交割合约溢价率为例 , 代码为:
study("Binance6月溢价率",overlay=false)
premium=security("BINANCE:BTCM2021",timeframe.period,close)-security("BINANCE:BTCUSDT",timeframe.period,close)
premiumPercent=(premium/security("BINANCE:BTCUSDT",timeframe.period,close))*100
plot(premiumPercent,color=iff(premium>=0,color.blue,color.red))

像专业交易员一样操作?教你使用TradingView编写简单指标