HQChart使用教程26- K线图及走势图数据自动更新设置

K线图及走势图数据自动更新设置

  • SetOption 设置数据自动更新
  • K线图数据流程
  • 停止自动更新
  • 关于自动更新注意的问题
  • 自定义交易时间
  • 关闭自动更新以后手动开启自动更新
  • 交流QQ群: 950092318
  • HQChart代码地址
  • 如果教程或hqchart对你有帮助, 请在git上star,教程点下赞 。谢谢~~

SetOption 设置数据自动更新

var option=
{Type:'历史K线图',......IsAutoUpdate:true,          //是自动更新数据AutoUpdateFrequency:10000,   //数据更新频率.........
}

IsAutoUpdate: 是否自动更新数据
AutoUpdateFrequency : 自动更新数据的频率毫秒 (缺省 30秒)
只要设置这2个变量就可以让 k线图或走势图自动更新数据

K线图数据流程

数据流程大致是这样的 下载一次全量K线数据+定时更新当天数据 组合成完整的K线数据。

停止自动更新

使用ChartDestory()
页面关闭的时候,需要手动调用下停止自动更新来关闭定时器

Chart.ChartDestory();

关于自动更新注意的问题

有朋友在调试自动更新的时候经常会问我, 为什么没有调用自动更。

  1. 请查看你的更新频率(AutoUpdateFrequency)是不是太长了,可以改小点试试
  2. 请看下你目前时间是否是交易时间,更新只有在交易时间调用其他时间不调用。省流量。
    前端专门有函数来判断当前的市场状态。 如果你非要在非交易日调试,把下面的函数直接return 2;
GetMarketStatus:function(symbol)    //获取市场状态 0=闭市 1=盘前 2=盘中 3=盘后{if (!symbol) return 0;var upperSymbol=symbol.toUpperCase();if (this.IsUSA(upperSymbol)){var usaDate=GetLocalTime(-4);var day = usaDate.getDay();var time = usaDate.getHours() * 100 + usaDate.getMinutes();if(day == 6 || day== 0) return 0;   //周末//9:30 - 16:00 考虑夏令时间时间增加1小时 9:30 - 17:00if (time>1730) return 3;if (time<930) return 1;return 2;}else if (this.IsBIT(upperSymbol))   //数字货币24小时{return 2;}else{var nowDate= new Date();var day = nowDate.getDay();var time = nowDate.getHours() * 100 + nowDate.getMinutes();if(day == 6 || day== 0) return 0;   //周末//9:30 - 15:40if(time>1540) return 3;if(time<925) return 1;return 2;   }},

自定义交易时间

在外部覆盖MARKET_SUFFIX_NAME.GetMarketStatus 这个方法就可以
返回 0=闭市 1=盘前 2=盘中 3=盘后

js

MARKET_SUFFIX_NAME.GetMarketStatus = function (symbol) 
{return 2; //一直交易}

VUE

import HQChart from 'hqchart'
........
HQChart.Chart.MARKET_SUFFIX_NAME.GetMarketStatus = function (symbol) 
{return 2; //一直交易}

小程序/uniapp

import { JSCommon } from "../../jscommon/umychart.wechat.3.0.js";
......JSCommon.MARKET_SUFFIX_NAME.GetMarketStatus = function (symbol) { return 2; }

uniapp h5

import HQChart from '../../umychart_uniapp_h5/umychart.uniapp.h5.js'
HQChart.MARKET_SUFFIX_NAME.GetMarketStatus = function (symbol) 
{return 2; //一直交易
}

关闭自动更新以后手动开启自动更新

this.JSChart.JSChartContainer.IsAutoUpdate=true; //设置自动更新
this.JSChart.JSChartContainer.ChangeSymbol(当前股票); //重新请求当前得股票

交流QQ群: 950092318

如果还有问题可以加交流QQ群: 950092318

HQChart代码地址

地址:https://github.com/jones2000/HQChart

如果教程或hqchart对你有帮助, 请在git上star,教程点下赞 。谢谢~~


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部