tradingview使用心得

因为公司目前是在做一个交易所的项目,页面中需要用到k线图,之前用了echart的k线,太过简陋了,参考了另外几个同级网站,决定用tradingview这个专业的股票交易所类的图表库。

从上周开始就研究tradingview,一直到昨天才算是勉强能够在本地运行,真的是不容易。下面来说说使用过程中遇到的一些坑。

1、tradingview虽然是开源免费,可也是仅限于一些基本的图表服务,但这也基本上够用了。如果你要定制高级别的,那需要联系官方。使用之前,需要进入tradingview官网去申请他的chart_library(https://cn.tradingview.com/HTML5-stock-forex-bitcoin-charting-library/ ), 申请步骤是我见过最复杂的,需要下载它的一份协议,签名盖章之后扫描上传上去,然后填写一堆表单(邮箱公司地址等等),如果填写都ok的话,会在一两天之内回复你的邮箱,是github的链接(已授权过的,不然会报404)。
2、github授权之后,你就可以clone到本地了,可以用http-server运行(npm install http-server/ http-server -p 8080)
运行之后,可以看到demo的效果。demo中的代码都是使用的tradingview官方的UDF接口来获取数据的。这有很大的局限性,如果你的团队后台人手够的话,也完全可以参照文档, 去开发一个接口供使用,这样前端代码会少很多。
3、当然,如果像我这样,因为后台框架的限制,无法给我一个适配UDF的接口,那就很蛋疼了。
我现在所希望的是,能将我的数据放进图表中,因为之前用echart的时候已经有数据接口了,数据返回时没有问题的。
官方文档是让使用JS API,可是说实话我到现在也没有get到JS API的魅力。官方文档中对于JS API是这样解释的:

	这是啥? 一套JS方法(以实现指定的公共接口)。
	我该怎么使用它?: 您应该创建一个JS对象,它将以某种方式接收数据,并响应图表库的请求。
	在图表库中实现了数据缓存(历史和商品信息)。当您创建一个实现接口的对象时,只需将它传递给图表库Widget的构造函数。

真心觉得看不懂,这里面的某种方式是什么,创建对象之后的传递方法又是什么? 一脸懵逼,如果有大佬看到我的文章,还希望不吝赐教。

4、ok,然后就是无休止的查找了,百度,google,Stack Overflow等等。 前两天基本一无所获,找了些但是与我想要的不对口。昨天无意间找到了这个( 一个domo ),简直如获至宝啊。结合我的项目代码,很顺利就完成了数据对接。 里面的createFeed不是很明白,没有注释,read.me也没啥东西,有点蛋疼。

好了,看效果把: 在这里插入图片描述

因为数据只有这些,所以看着有点单薄,后期数据多了就ok了。

这里就不上代码了,如果有需要,可以留言。

2019/1、18号更新:

1、新增均线和最新价水平虚线方法:(与火币效果一样)

 self.chart.onChartReady(function(){
                    console.log('ready')
                   	// 创建均线
                    self.chart.chart().createStudy('Moving Average', false, false, [5, 'close', 0], null, {
                        'Plot.color': '#34a9ff',
                        'Plot.linewidth': 1
                    })
                    self.chart.chart().createStudy('Moving Average', false, false, [10, 'close', 0], null, {
                        'Plot.color': '#ffb620',
                        'Plot.linewidth': 1
                    })
                    self.chart.chart().createStudy('Moving Average', false, false, [15, 'close', 0], null, {
                        'Plot.color': '#8750ff',
                        'Plot.linewidth': 1
                    })
                    self.chart.chart().createStudy('Moving Average', false, false, [30, 'close', 0], null, {
                        'Plot.color': '#ff688f',
                        'Plot.linewidth': 1
                    })

                    // 创建最新价水平线
                    self.chart.chart().createShape({
                        time: self.timestamp,
                        channel:close
                    },{
                        shape: 'horizontal_line'
                    })
  })

效果:
在这里插入图片描述
简直不能再棒!!!

  • 12
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 60
    评论
`strategy()` 是 TradingView 中 Pine 脚本中最重要的函数之一,它用于定义你的交易策略。`strategy()` 函数包含多个参数,用于定义你的策略的名称、交易方向、入场条件、出场条件和止损条件等。下面是 `strategy()` 函数的常用参数: - `title`:策略的名称。 - `shorttitle`:策略的缩略名称。 - `overlay`:如果设置为 `true`,则该策略将覆盖图表上的价格线。 - `pyramiding`:设置为 `1` 时,表示每个信号只会产生一次交易信号。设置为 `2` 时,表示每个信号可以产生两个交易信号,以此类推。 - `precision`:价格精度。 - `initial_capital`:初始资本。 - `default_qty_type`:交易量类型,默认为 `strategy.percent_of_equity`,即使用百分比进行交易。 - `default_qty_value`:交易量,默认为 `100`,表示使用 100% 的资本进行交易。 - `commission_type`:手续费类型,默认为 `strategy.commission.percent`,即使用百分比进行计算。 - `commission_value`:手续费,默认为 `0.1`,表示手续费为 0.1%。 除了上述参数之外,`strategy()` 函数还包括 `entry`、`exit` 和 `stop_loss` 等参数,用于定义入场、出场和止损条件。例如,你可以使用以下代码定义一个简单的交易策略: ``` strategy("My Strategy", overlay=true) longCondition = crossover(sma(close, 20), sma(close, 50)) if (longCondition) strategy.entry("My Long Entry Id", strategy.long) shortCondition = crossunder(sma(close, 20), sma(close, 50)) if (shortCondition) strategy.entry("My Short Entry Id", strategy.short) strategy.exit("My Long Entry Id", "My Long Exit Id", stop=close * 0.95) strategy.exit("My Short Entry Id", "My Short Exit Id", stop=close * 1.05) ``` 这段代码使用两个移动平均线(20 和 50)来定义长期和短期趋势。当短期平均线上穿长期平均线时,会产生一个买入信号,当短期平均线下穿长期平均线时,会产生一个卖出信号。在这个策略中,止损条件分别设置为买入价的 5% 和卖出价的 5%。 请注意,这只是一个简单的示例,实际的交易策略需要更加复杂和全面的考虑。在实际交易中,你需要仔细评估你的风险和收益,并根据市场情况调整你的交易策略。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 60
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值