OLO:如何在TradingView 利用Pine脚本编写自己的交易策略?_LOR

工欲善其事,必先利其器。看行情可以直接在交易所软件看,也可以在专门的行情软件看,但是很多软件有一个缺点就是它的指标和策略是相对固定的,无法满足个性化的需要。

TradingView是一个投资数据查询软件、网站,可以查看股票期货、外汇、差价合约,加密货币、指数等商品的数据和行情。不仅如此,用户还可以用脚本语言「PineScript」创建和运行个性化的指标和策略。

网站地址:https://cn.tradingview.com/gopro/?share_your_love=bushezhouye

我很久以前就知道这个网站了,但是因为看不懂代码,一直没有去使用,最近经过自己粗浅的理解和使用一些现有的代码,我写了一个简单的交易策略。策略非常简单,就是双均线策略,短期均线上交长期均线看多,短期均线下交长期均线看空。

先注册,然后在行情查看界面里左下角的pine编辑器里面编写。

??

1、双均线策略代码

//@version=4strategy("双均线交叉策略",overlay=true)fastLength=input(9)slowLength=input(18)price=closemafast=sma(price,fastLength)maslow=sma(price,slowLength)if(crossover(mafast,maslow))strategy.entry("买入",strategy.long,comment="买入")if(mafast<=maslow)strategy.entry("卖出",strategy.short,comment="卖出")len=input(9,minval=1,title="Length")src=input(close,title="Source")offset=input(title="Offset",type=input.integer,defval=0,minval=-500,maxval=500)out=sma(src,len)plot(out,color=color.blue,title="MA",offset=offset)len2=input(18,minval=1,title="Length")src2=input(close,title="Source")offset2=input(title="Offset2",type=input.integer,defval=0,minval=-500,maxval=500)out2=sma(src2,len2)plot(out2,color=color.yellow,title="MA",offset=offset2)

2、代码解释

1)

//@version=4strategy("双均线交叉策略",overlay=true)

「//」这是注释,方便用户理解

strategy("双均线交叉策略",overlay=true)

"双均线交叉策略",这是策略的名称,overlay为false表示添加至指标区域,true表示添加至行情显示区域,也就是显示在K线图上。

2)

fastLength=input(9),fastLength,快线;input(9)指的是9,代入后面就是MA9

slowLength=input(18),slowLength,慢线,input(18)指的是18,代入后面就是MA18

9和18的数值可以自定义。

3)

mafast=sma(price,fastLength)maslow=sma(price,slowLength)

分别指快慢线

4)

if(crossover(mafast,maslow))strategy.entry("买入",strategy.long,comment="买入")if(mafast<=maslow)strategy.entry("卖出",strategy.short,comment="卖出")

意思如下:

快线上穿慢线就买入,

快线价格小于等于慢线价格就卖出。

strategy.long,买入。

strategy.short,卖出。

strategy.entry,市场进入命令,操作命令。

5)以下是绘制均线在行情图上。

len=input(9,minval=1,title="Length")src=input(close,title="Source")offset=input(title="Offset",type=input.integer,defval=0,minval=-500,maxval=500)out=sma(src,len)plot(out,color=color.blue,title="MA",offset=offset)len2=input(18,minval=1,title="Length")src2=input(close,title="Source")offset2=input(title="Offset2",type=input.integer,defval=0,minval=-500,maxval=500)out2=sma(src2,len2)plot(out2,color=color.yellow,title="MA",offset=offset2)

len=input(9,minval=1,title="Length"),定义一个函数len,input(9,minval=1,title="Length")其中9,是MA9的9,可以自己改数值。

plot(out,color=color.blue,title="MA",offset=offset),绘制均线,颜色为蓝色。

color.blue,颜色为蓝色,可以改。

3、效果以及注意事项

在图表上标出买卖点,很直观。

1)编写过程中,如果代码有错误,会报错,根据具体的行数去修改就行了。

2)"是英文字符,使用汉语输入会报错。

3)一些功能不知道怎么实现怎么办?查看官方的文档,还有去看看其他人是怎么写的,多看一些代码例子,理解具体代码怎么用,一些功能具体怎么实现。

4)不必完全理解,拿其中的模块搭建就可。一串代码实现了某个功能,可以直接拿来修改。

风险提示

1)清心寡欲,保持轻仓,风险控制第一。凡是无法克制欲望的,必然亏损。

2)合约对大多数人来说就是给市场送钱的。持有优质现货是盈利的方法。

3)现货都无法盈利的,不要期望合约能盈利。

4)赚钱难以速成,慢就是快,少就是多,持久作战。无论是现货,还是合约都是如此。

如果对你有启发,请给我点赞、评论、转发。

我是不舍昼夜,专注于投资理财,个人发展,关注我,持续与你分享我的体验和思考。

永远轻仓,部分长线投资,部分趋势交易,5%收入灵活操作。分析都是模糊的正确,观点仅供参考,迷信必亏,不可照搬。存在高危操作,不要随意模仿,请以自己擅长的方式为主。投资有风险,请自行承担。

来源:金色财经

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

区块博客

[0:0ms0-3:250ms