hqchart 1.1.13046 → 1.1.13051
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/umychart.vue.js +9 -7
- package/package.json +1 -1
- package/src/jscommon/umychart.complier.js +4 -0
- package/src/jscommon/umychart.js +14 -0
- package/src/jscommon/umychart.uniapp.h5/umychart.uniapp.h5.js +19 -1
- package/src/jscommon/umychart.version.js +1 -1
- package/src/jscommon/umychart.vue/umychart.vue.js +19 -1
package/lib/umychart.vue.js
CHANGED
|
@@ -8808,7 +8808,7 @@ if(this.IsSHGEM(symbol))return{Max:0.2,Min:-0.2};//创业板 [20% - -20%]
|
|
|
8808
8808
|
if(!name)return null;if(name.indexOf('ST')>=0)return{Max:0.05,Min:-0.05};//ST 股票 [5% - -5%]
|
|
8809
8809
|
return{Max:0.1,Min:-0.1};//[10% - -10%]
|
|
8810
8810
|
},GetDefaultDecimal:function GetDefaultDecimal(symbol)//默认小数位数
|
|
8811
|
-
{return 2;},GetFHKDecimal:function GetFHKDecimal(symbol)//港股指数期货 小数位数
|
|
8811
|
+
{return 2;},GetSHDecimal:function GetSHDecimal(symbol){return 2;},GetSZDecimal:function GetSZDecimal(symbol){return 2;},GetFHKDecimal:function GetFHKDecimal(symbol)//港股指数期货 小数位数
|
|
8812
8812
|
{return 0;},GetFTSEDecimal:function GetFTSEDecimal(symbol)//富时中国A50期货 小数位数
|
|
8813
8813
|
{return 0;},GetBITDecimal:function GetBITDecimal(symbol){return 2;},GetSHODecimal:function GetSHODecimal(symbol){return 4;},GetETDecimal:function GetETDecimal(symbol){return 2;},GetHKDecimal:function GetHKDecimal(symbol){return 2;},GetTWDecimal:function GetTWDecimal(symbol){return 2;},GetJPDecimal:function GetJPDecimal(symbol){return 2;},GetHSXDecimal:function GetHSXDecimal(symbol){return 2;},GetHNXDecimal:function GetHNXDecimal(symbol){return 2;},GetUPCOMDecimal:function GetUPCOMDecimal(symbol){return 2;},GetForeignExchangeDecimal:function GetForeignExchangeDecimal(symbol){return 4;},GetNYMEXDecimal:function GetNYMEXDecimal(symbol)//纽约期货交易所
|
|
8814
8814
|
{return g_NYMEXTimeData.GetDecimal(symbol);},GetCOMEXDecimal:function GetCOMEXDecimal(symbol){return g_COMEXTimeData.GetDecimal(symbol);},GetNYBOTDecimal:function GetNYBOTDecimal(symbol){return g_NYBOTTimeData.GetDecimal(symbol);},GetCBOTDecimal:function GetCBOTDecimal(symbol){return g_CBOTTimeData.GetDecimal(symbol);},GetLMEDecimal:function GetLMEDecimal(symbol){return g_LMETimeData.GetDecimal(symbol);},GetTOCOMDecimal:function GetTOCOMDecimal(symbol){return g_TOCOMTimeData.GetDecimal(symbol);},GetIPEDecimal:function GetIPEDecimal(symbol){return g_IPETimeData.GetDecimal(symbol);},GetETMarketStatus:function GetETMarketStatus(symbol){// 0=闭市 1=盘前 2=盘中 3=盘后
|
|
@@ -9295,7 +9295,7 @@ this.TIME_SPLIT2=[//ID=0 09:00-07:00
|
|
|
9295
9295
|
if(!symbol)return defaultfloatPrecision;var upperSymbol=symbol.toUpperCase();//全部由外部控制
|
|
9296
9296
|
if(typeof MARKET_SUFFIX_NAME.GetCustomDecimal=='function')return MARKET_SUFFIX_NAME.GetCustomDecimal(upperSymbol);if(MARKET_SUFFIX_NAME.IsSHSZFund(upperSymbol))defaultfloatPrecision=3;//基金3位小数
|
|
9297
9297
|
else if(MARKET_SUFFIX_NAME.IsSHO(upperSymbol)||MARKET_SUFFIX_NAME.IsSZO(upperSymbol))defaultfloatPrecision=MARKET_SUFFIX_NAME.GetSHODecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsChinaFutures(upperSymbol))defaultfloatPrecision=g_FuturesTimeData.GetDecimal(upperSymbol);//期货小数位数读配置
|
|
9298
|
-
else if(MARKET_SUFFIX_NAME.IsFHK(upperSymbol))defaultfloatPrecision=MARKET_SUFFIX_NAME.GetFHKDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsFTSE(upperSymbol))defaultfloatPrecision=MARKET_SUFFIX_NAME.GetFTSEDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsBIT(upperSymbol))defaultfloatPrecision=MARKET_SUFFIX_NAME.GetBITDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsET(upperSymbol))defaultfloatPrecision=MARKET_SUFFIX_NAME.GetETDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsForeignExchange(upperSymbol))defaultfloatPrecision=MARKET_SUFFIX_NAME.GetForeignExchangeDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsNYMEX(upperSymbol))defaultfloatPrecision=g_NYMEXTimeData.GetDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsCOMEX(upperSymbol))defaultfloatPrecision=g_COMEXTimeData.GetDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsNYBOT(upperSymbol))defaultfloatPrecision=g_NYBOTTimeData.GetDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsCBOT(upperSymbol))defaultfloatPrecision=g_CBOTTimeData.GetDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsLME(upperSymbol))defaultfloatPrecision=g_LMETimeData.GetDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsTOCOM(upperSymbol))defaultfloatPrecision=g_TOCOMTimeData.GetDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsIPE(upperSymbol))defaultfloatPrecision=g_IPETimeData.GetDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsHK(upperSymbol))defaultfloatPrecision=MARKET_SUFFIX_NAME.GetHKDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsTW(upperSymbol))defaultfloatPrecision=MARKET_SUFFIX_NAME.GetTWDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsJP(upperSymbol))defaultfloatPrecision=MARKET_SUFFIX_NAME.GetJPDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsHSX(upperSymbol))defaultfloatPrecision=MARKET_SUFFIX_NAME.GetHSXDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsHNX(upperSymbol))defaultfloatPrecision=MARKET_SUFFIX_NAME.GetHNXDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsUPCOM(upperSymbol))defaultfloatPrecision=MARKET_SUFFIX_NAME.GetUPCOMDecimal(upperSymbol);else defaultfloatPrecision=MARKET_SUFFIX_NAME.GetDefaultDecimal(upperSymbol);return defaultfloatPrecision;}//把不连续的分时数据转成连续的分时数据
|
|
9298
|
+
else if(MARKET_SUFFIX_NAME.IsFHK(upperSymbol))defaultfloatPrecision=MARKET_SUFFIX_NAME.GetFHKDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsFTSE(upperSymbol))defaultfloatPrecision=MARKET_SUFFIX_NAME.GetFTSEDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsBIT(upperSymbol))defaultfloatPrecision=MARKET_SUFFIX_NAME.GetBITDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsET(upperSymbol))defaultfloatPrecision=MARKET_SUFFIX_NAME.GetETDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsForeignExchange(upperSymbol))defaultfloatPrecision=MARKET_SUFFIX_NAME.GetForeignExchangeDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsNYMEX(upperSymbol))defaultfloatPrecision=g_NYMEXTimeData.GetDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsCOMEX(upperSymbol))defaultfloatPrecision=g_COMEXTimeData.GetDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsNYBOT(upperSymbol))defaultfloatPrecision=g_NYBOTTimeData.GetDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsCBOT(upperSymbol))defaultfloatPrecision=g_CBOTTimeData.GetDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsLME(upperSymbol))defaultfloatPrecision=g_LMETimeData.GetDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsTOCOM(upperSymbol))defaultfloatPrecision=g_TOCOMTimeData.GetDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsIPE(upperSymbol))defaultfloatPrecision=g_IPETimeData.GetDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsHK(upperSymbol))defaultfloatPrecision=MARKET_SUFFIX_NAME.GetHKDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsTW(upperSymbol))defaultfloatPrecision=MARKET_SUFFIX_NAME.GetTWDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsJP(upperSymbol))defaultfloatPrecision=MARKET_SUFFIX_NAME.GetJPDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsHSX(upperSymbol))defaultfloatPrecision=MARKET_SUFFIX_NAME.GetHSXDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsHNX(upperSymbol))defaultfloatPrecision=MARKET_SUFFIX_NAME.GetHNXDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsUPCOM(upperSymbol))defaultfloatPrecision=MARKET_SUFFIX_NAME.GetUPCOMDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsSZ(upperSymbol))defaultfloatPrecision=MARKET_SUFFIX_NAME.GetSZDecimal(upperSymbol);else if(MARKET_SUFFIX_NAME.IsSH(upperSymbol))defaultfloatPrecision=MARKET_SUFFIX_NAME.GetSHDecimal(upperSymbol);else defaultfloatPrecision=MARKET_SUFFIX_NAME.GetDefaultDecimal(upperSymbol);return defaultfloatPrecision;}//把不连续的分时数据转成连续的分时数据
|
|
9299
9299
|
function GenerateMinuteStockJsonData(data){var stock={symbol:data.symbol,name:data.name,time:data.time,date:data.date,price:data.price,open:data.open,yclose:data.yclose,high:data.high,low:data.low,vol:data.vol,amount:data.amount,minute:[]};var mapMinute=new _map2.default();for(var i in data.minute){var item=data.minute[i];mapMinute.set(item.time,item);}var timeData=g_MinuteTimeStringData.GetTimeData(stock.symbol);for(var i in timeData)//根据交易时间产生数据
|
|
9300
9300
|
{var time=timeData[i];var minuteItem={time:time,vaild:false};if(mapMinute.has(time)){var find=mapMinute.get(time);minuteItem.vaild=true;minuteItem.price=find.price;minuteItem.open=find.open;minuteItem.high=find.high;minuteItem.low=find.low;minuteItem.avprice=find.avprice;minuteItem.vol=find.vol;minuteItem.amount=find.amount;if(IFrameSplitOperator.IsNumber(find.increase))minuteItem.increase=find.increase;if(IFrameSplitOperator.IsNumber(find.risefall))minuteItem.risefall=find.risefall;if(IFrameSplitOperator.IsNumber(find.position))minuteItem.position=find.position;}stock.minute.push(minuteItem);}var vaildCount=0;for(var i=stock.minute.length-1;i>=0;--i){vaildCount=i+1;var item=stock.minute[i];if(item.vaild==true)break;}stock.minute=stock.minute.slice(0,vaildCount);//去掉最后无用的数据
|
|
9301
9301
|
return stock;}function GetLocalTime(i)//得到标准时区的时间的函数
|
|
@@ -9572,14 +9572,16 @@ this.MAX=function(args,node){if(args.length==0)this.ThrowUnexpectedNode(node,'MA
|
|
|
9572
9572
|
//用法:MIN(A,B, C, D .....)返回A,B, C ,D ......中的较小值
|
|
9573
9573
|
//例如:MIN(CLOSE,OPEN)返回开盘价和收盘价中的较小值
|
|
9574
9574
|
this.MIN=function(args,node){if(args.length==0)this.ThrowUnexpectedNode(node,'MIN() Error: 参数个数不能为0');if(args.length==1)return args[0];var aryData=[],aryNumber=[];for(var i in args){var item=args[i];if(IFrameSplitOperator.IsNumber(item))aryNumber.push(item);else if(Array.isArray(item))aryData.push(item);}var minNumber=null;if(aryNumber.length>0){minNumber=aryNumber[0];for(var i=1;i<aryNumber.length;++i){minNumber=Math.min(minNumber,aryNumber[i]);}}var minAryData=null;if(aryData.length>0){minAryData=aryData[0].slice(0);for(var i=1;i<aryData.length;++i){var dataItem=aryData[i];for(var j in dataItem){var minItem=minAryData[j];var item=dataItem[j];if(!IFrameSplitOperator.IsNumber(minItem))continue;if(!IFrameSplitOperator.IsNumber(item)){minAryData[j]=null;continue;}minAryData[j]=Math.min(minItem,item);}}}if(minAryData==null&&minNumber!=null)return minNumber;if(minAryData&&minNumber==null)return minAryData;for(var i in minAryData){if(!IFrameSplitOperator.IsNumber(minAryData[i]))continue;minAryData[i]=Math.min(minAryData[i],minNumber);}return minAryData;};//取正数
|
|
9575
|
-
this.ABS=function(data){var result=[];for(var _i75 in data){result[_i75]=null;if(!isNaN(data[_i75]))result[_i75]=Math.abs(data[_i75]);}return result;};this.MA=function(data,dayCount){var result=[];if(dayCount<=0)return result;if(!Array.isArray(dayCount)){
|
|
9575
|
+
this.ABS=function(data){var result=[];for(var _i75 in data){result[_i75]=null;if(!isNaN(data[_i75]))result[_i75]=Math.abs(data[_i75]);}return result;};this.MA=function(data,dayCount){var result=[];if(dayCount<=0)return result;if(!Array.isArray(dayCount)){dayCount=parseInt(dayCount);//转整形
|
|
9576
|
+
if(dayCount<=0)dayCount=1;if(!data||!data.length)return result;for(var i=0;i<data.length;++i){result[i]=null;if(this.IsNumber(data[i]))break;}var data=data.slice(0);//复制一份数据出来
|
|
9576
9577
|
for(var days=0;i<data.length;++i,++days){if(days<dayCount-1){result[i]=null;continue;}var preValue=data[i-(dayCount-1)];var _sum=0;for(var _j2=dayCount-1;_j2>=0;--_j2){var value=data[i-_j2];if(!this.IsNumber(value)){value=preValue;//空数据就取上一个数据
|
|
9577
9578
|
data[i-_j2]=value;}else{preValue=value;}_sum+=value;}result[i]=_sum/dayCount;}}else{for(var i=0;i<data.length;++i){result[i]=null;if(i>=dayCount.length)continue;var sumCount=dayCount[i];if(!this.IsNumber(sumCount))continue;if(sumCount<=0)continue;var sum=0;var count=0;for(var j=i,k=0;j>=0&&k<sumCount;--j,++k){sum+=data[j];++count;}if(count>0)result[i]=sum/count;}}return result;};//指数平均数指标 EMA(close,10)
|
|
9578
9579
|
//N 支持周期数组
|
|
9579
9580
|
this.EMA=function(data,dayCount){var result=[];if(data.length<=0)return result;if(Array.isArray(dayCount)){for(var i=0;i<dayCount.length;++i){var period=dayCount[i];if(!this.IsNumber(period))continue;period=parseInt(period);//周期用整数
|
|
9580
9581
|
if(period<=0)continue;if(period>i+1)period=i+1;//EMA(N) = 2/(N+1)*C + (N-1)/(N+1)*EMA', EMA'为前一天的ema
|
|
9581
9582
|
var EMAFactor=[2/(period+1),(period-1)/(period+1)];var ema=null;var lastEMA=null;for(var j=0;j<period;++j){var index=i-(period-j-1);var value=data[index];if(!this.IsNumber(value))coninue;if(lastEMA==null){ema=value;//第一个EMA为第一个数据的价格
|
|
9582
|
-
lastEMA=ema;}else{ema=EMAFactor[0]*value+EMAFactor[1]*lastEMA;lastEMA=ema;}}result[i]=ema;}}else{
|
|
9583
|
+
lastEMA=ema;}else{ema=EMAFactor[0]*value+EMAFactor[1]*lastEMA;lastEMA=ema;}}result[i]=ema;}}else{dayCount=parseInt(dayCount);//转整形
|
|
9584
|
+
if(dayCount<=0)return result;var offset=0;//取首个有效数据
|
|
9583
9585
|
for(;offset<data.length;++offset){if(data[offset]!=null&&!isNaN(data[offset]))break;}var p1Index=offset;var p2Index=offset+1;result[p1Index]=data[p1Index];for(var i=offset+1;i<data.length;++i,++p1Index,++p2Index){result[p2Index]=(2*data[p2Index]+(dayCount-1)*result[p1Index])/(dayCount+1);}}return result;};this.XMA=function(data,n){var result=[];var offset=0;for(;offset<data.length;++offset){if(this.IsNumber(data[offset]))break;}var p=parseInt((n-2)/2);var sum=0;var count=0,start=0,end=0;for(var i=offset,j=0;i<data.length;++i){start=i-p-1;end=i+(n-p)-1;for(j=start;j<end;++j){if(j>=0&&j<data.length){if(this.IsNumber(data[j])){sum+=data[j];++count;}}}if(count!=0)result[i]=sum/count;else result[i]=null;sum=0;count=0;}return result;};/*
|
|
9584
9586
|
SMA 移动平均
|
|
9585
9587
|
返回移动平均。
|
|
@@ -9626,7 +9628,7 @@ else if(period<0)period=i+1;count=0;for(var j=i,k=0;j>=0&&k<period;--j,++k)//当
|
|
|
9626
9628
|
求最高值。
|
|
9627
9629
|
用法: HHV(X,N) 求N周期内X最高值,N=0则从第一个有效值开始。
|
|
9628
9630
|
例如: HHV(HIGH,30) 表示求30日最高价。
|
|
9629
|
-
*/this.HHV=function(data,n){var result=[];if(Array.isArray(n)){var max=null;for(var i=0,j=0;i<data.length;++i){result[i]=null;if(i>=n.length)continue;max=null;var count=n[i];if(count>0&&count<=i){for(j=i-count;j<=i;++j){if(max==null||max<data[j])max=data[j];}}else{count=i;for(j=0;j<=i;++j){if(max==null||max<data[j])max=data[j];}}result[i]=max;}}else{if(!IFrameSplitOperator.IsNonEmptyArray(data))return result;if(n<=0)n=data.length;else if(n>data.length)n=data.length;var nStart=this.GetFirstVaildIndex(data);if(nStart>=data.length)return result;var nMax=nStart;if(nMax<data.length)result[nMax]=data[nMax];for(var i=nMax+1,j=2;i<data.length&&j<n;++i,++j){if(data[i]>=data[nMax])nMax=i;result[i]=data[nMax];}for(;i<data.length;++i){if(i-nMax<n){nMax=data[i]<data[nMax]?nMax:i;}else{for(j=nMax=i-n+1;j<=i;++j){nMax=data[j]<data[nMax]?nMax:j;}}result[i]=data[nMax];}}return result;};/*
|
|
9631
|
+
*/this.HHV=function(data,n){var result=[];if(Array.isArray(n)){var max=null;for(var i=0,j=0;i<data.length;++i){result[i]=null;if(i>=n.length)continue;max=null;var count=n[i];if(count>0&&count<=i){for(j=i-count;j<=i;++j){if(max==null||max<data[j])max=data[j];}}else{count=i;for(j=0;j<=i;++j){if(max==null||max<data[j])max=data[j];}}result[i]=max;}}else{if(!IFrameSplitOperator.IsNonEmptyArray(data))return result;n=parseInt(n);if(n<=0)n=data.length;else if(n>data.length)n=data.length;var nStart=this.GetFirstVaildIndex(data);if(nStart>=data.length)return result;var nMax=nStart;if(nMax<data.length)result[nMax]=data[nMax];for(var i=nMax+1,j=2;i<data.length&&j<n;++i,++j){if(data[i]>=data[nMax])nMax=i;result[i]=data[nMax];}for(;i<data.length;++i){if(i-nMax<n){nMax=data[i]<data[nMax]?nMax:i;}else{for(j=nMax=i-n+1;j<=i;++j){nMax=data[j]<data[nMax]?nMax:j;}}result[i]=data[nMax];}}return result;};/*
|
|
9630
9632
|
HV(X,N):求X在N个周期内(不包含当前k线)的最高值。
|
|
9631
9633
|
|
|
9632
9634
|
注:
|
|
@@ -9647,7 +9649,7 @@ else if(period<0)period=i+1;count=0;for(var j=i,k=0;j>=0&&k<period;--j,++k)//当
|
|
|
9647
9649
|
求最低值。
|
|
9648
9650
|
用法: LLV(X,N) 求N周期内X最低值,N=0则从第一个有效值开始。
|
|
9649
9651
|
例如: LLV(LOW,0) 表示求历史最低价。
|
|
9650
|
-
*/this.LLV=function(data,n){var result=[];if(Array.isArray(n)){for(var i=0;i<data.length;++i){result[i]=null;if(i>=n.length)continue;var min=null;var count=n[i];if(count>0&&count<=i){for(var j=i-count;j<=i;++j){if(min==null||min>data[j])min=data[j];}}else{count=i;for(var j=0;j<=i;++j){if(min==null||min>data[j])min=data[j];}}result[i]=min;}}else{if(!IFrameSplitOperator.IsNonEmptyArray(data))return result;if(n<=0)n=data.length;else if(n>data.length)n=data.length;var nStart=this.GetFirstVaildIndex(data);if(nStart>=data.length)return result;var nMin=nStart;if(nMin<data.length)result[nMin]=data[nMin];for(var i=nMin+1,j=2;i<data.length&&j<n;++i,++j){if(data[i]<=data[nMin])nMin=i;result[i]=data[nMin];}for(;i<data.length;++i){if(i-nMin<n){nMin=data[i]>data[nMin]?nMin:i;}else{for(j=nMin=i-n+1;j<=i;++j){nMin=data[j]>data[nMin]?nMin:j;}}result[i]=data[nMin];}}return result;};/*
|
|
9652
|
+
*/this.LLV=function(data,n){var result=[];if(Array.isArray(n)){for(var i=0;i<data.length;++i){result[i]=null;if(i>=n.length)continue;var min=null;var count=n[i];if(count>0&&count<=i){for(var j=i-count;j<=i;++j){if(min==null||min>data[j])min=data[j];}}else{count=i;for(var j=0;j<=i;++j){if(min==null||min>data[j])min=data[j];}}result[i]=min;}}else{if(!IFrameSplitOperator.IsNonEmptyArray(data))return result;n=parseInt(n);if(n<=0)n=data.length;else if(n>data.length)n=data.length;var nStart=this.GetFirstVaildIndex(data);if(nStart>=data.length)return result;var nMin=nStart;if(nMin<data.length)result[nMin]=data[nMin];for(var i=nMin+1,j=2;i<data.length&&j<n;++i,++j){if(data[i]<=data[nMin])nMin=i;result[i]=data[nMin];}for(;i<data.length;++i){if(i-nMin<n){nMin=data[i]>data[nMin]?nMin:i;}else{for(j=nMin=i-n+1;j<=i;++j){nMin=data[j]>data[nMin]?nMin:j;}}result[i]=data[nMin];}}return result;};/*
|
|
9651
9653
|
LV(X,N) 求X在N个周期内的最小值(不包含当前k线)
|
|
9652
9654
|
|
|
9653
9655
|
注:
|
|
@@ -12661,7 +12663,7 @@ hisData.Symbol=message.symbol;}var stockObj={HQDataType:HQ_DATA_TYPE.KLINE_ID,St
|
|
|
12661
12663
|
this.ExecuteScript(item,data);}this.Status=0;}};this.OnExecuteFinish=function(data,indexInfo,jsExectute,jobInfo){var message={Data:data,IndexInfo:indexInfo,ID:JSCHART_WORKER_MESSAGE_ID.FINISH_EXECUTE_SCRIPT,JobInfo:jobInfo};postMessage(message);};this.OnExecuteError=function(error,indexInfo,jobData){var message={IndexInfo:indexInfo,ID:JSCHART_WORKER_MESSAGE_ID.ERROR_EXECUTE_SCRIPT,Error:error};postMessage(message);};}/********************************************************************************
|
|
12662
12664
|
* 版本信息输出
|
|
12663
12665
|
*
|
|
12664
|
-
*/var HQCHART_VERSION="1.1.
|
|
12666
|
+
*/var HQCHART_VERSION="1.1.13050";function PrintHQChartVersion(){var log='*************************************************************************************************************\n*\n* HQChart Ver: '+HQCHART_VERSION+' \n* \n* License: Apache License 2.0 \n* Source: https://github.com/jones2000/HQChart\n*\n*************************************************************************************************************\n';console.log(log);}PrintHQChartVersion();//把给外界调用的方法暴露出来
|
|
12665
12667
|
exports.default=(_jsChartInit$jsChartS={jsChartInit:JSChart.Init,jsChartStyle:JSChart.SetStyle,// IsIndexSymbol:IsIndexSymbol,
|
|
12666
12668
|
// BaseIndex:BaseIndex,
|
|
12667
12669
|
// ChartLine:ChartLine,
|
package/package.json
CHANGED
|
@@ -3172,6 +3172,7 @@ function JSAlgorithm(errorHandler,symbolData)
|
|
|
3172
3172
|
|
|
3173
3173
|
if (!Array.isArray(dayCount))
|
|
3174
3174
|
{
|
|
3175
|
+
dayCount=parseInt(dayCount); //转整形
|
|
3175
3176
|
if (dayCount<=0) dayCount=1;
|
|
3176
3177
|
if (!data || !data.length) return result;
|
|
3177
3178
|
|
|
@@ -3279,6 +3280,7 @@ function JSAlgorithm(errorHandler,symbolData)
|
|
|
3279
3280
|
}
|
|
3280
3281
|
else
|
|
3281
3282
|
{
|
|
3283
|
+
dayCount=parseInt(dayCount); //转整形
|
|
3282
3284
|
if (dayCount<=0) return result;
|
|
3283
3285
|
|
|
3284
3286
|
var offset=0;
|
|
@@ -3809,6 +3811,7 @@ function JSAlgorithm(errorHandler,symbolData)
|
|
|
3809
3811
|
else
|
|
3810
3812
|
{
|
|
3811
3813
|
if (!IFrameSplitOperator.IsNonEmptyArray(data)) return result;
|
|
3814
|
+
n=parseInt(n);
|
|
3812
3815
|
if (n<=0) n=data.length;
|
|
3813
3816
|
else if (n>data.length) n=data.length;
|
|
3814
3817
|
|
|
@@ -3907,6 +3910,7 @@ function JSAlgorithm(errorHandler,symbolData)
|
|
|
3907
3910
|
else
|
|
3908
3911
|
{
|
|
3909
3912
|
if (!IFrameSplitOperator.IsNonEmptyArray(data)) return result;
|
|
3913
|
+
n=parseInt(n);
|
|
3910
3914
|
if (n<=0) n=data.length;
|
|
3911
3915
|
else if (n>data.length) n=data.length;
|
|
3912
3916
|
|
package/src/jscommon/umychart.js
CHANGED
|
@@ -86108,6 +86108,16 @@ var MARKET_SUFFIX_NAME=
|
|
|
86108
86108
|
return 2;
|
|
86109
86109
|
},
|
|
86110
86110
|
|
|
86111
|
+
GetSHDecimal:function(symbol)
|
|
86112
|
+
{
|
|
86113
|
+
return 2;
|
|
86114
|
+
},
|
|
86115
|
+
|
|
86116
|
+
GetSZDecimal:function(symbol)
|
|
86117
|
+
{
|
|
86118
|
+
return 2;
|
|
86119
|
+
},
|
|
86120
|
+
|
|
86111
86121
|
GetFHKDecimal:function(symbol) //港股指数期货 小数位数
|
|
86112
86122
|
{
|
|
86113
86123
|
return 0;
|
|
@@ -89453,6 +89463,10 @@ function GetfloatPrecision(symbol) //获取小数位数
|
|
|
89453
89463
|
else if (MARKET_SUFFIX_NAME.IsHSX(upperSymbol)) defaultfloatPrecision=MARKET_SUFFIX_NAME.GetHSXDecimal(upperSymbol);
|
|
89454
89464
|
else if (MARKET_SUFFIX_NAME.IsHNX(upperSymbol)) defaultfloatPrecision=MARKET_SUFFIX_NAME.GetHNXDecimal(upperSymbol);
|
|
89455
89465
|
else if (MARKET_SUFFIX_NAME.IsUPCOM(upperSymbol)) defaultfloatPrecision=MARKET_SUFFIX_NAME.GetUPCOMDecimal(upperSymbol);
|
|
89466
|
+
|
|
89467
|
+
else if (MARKET_SUFFIX_NAME.IsSZ(upperSymbol)) defaultfloatPrecision=MARKET_SUFFIX_NAME.GetSZDecimal(upperSymbol);
|
|
89468
|
+
else if (MARKET_SUFFIX_NAME.IsSH(upperSymbol)) defaultfloatPrecision=MARKET_SUFFIX_NAME.GetSHDecimal(upperSymbol);
|
|
89469
|
+
|
|
89456
89470
|
else defaultfloatPrecision=MARKET_SUFFIX_NAME.GetDefaultDecimal(upperSymbol);
|
|
89457
89471
|
|
|
89458
89472
|
return defaultfloatPrecision;
|
|
@@ -90000,6 +90000,16 @@ var MARKET_SUFFIX_NAME=
|
|
|
90000
90000
|
return 2;
|
|
90001
90001
|
},
|
|
90002
90002
|
|
|
90003
|
+
GetSHDecimal:function(symbol)
|
|
90004
|
+
{
|
|
90005
|
+
return 2;
|
|
90006
|
+
},
|
|
90007
|
+
|
|
90008
|
+
GetSZDecimal:function(symbol)
|
|
90009
|
+
{
|
|
90010
|
+
return 2;
|
|
90011
|
+
},
|
|
90012
|
+
|
|
90003
90013
|
GetFHKDecimal:function(symbol) //港股指数期货 小数位数
|
|
90004
90014
|
{
|
|
90005
90015
|
return 0;
|
|
@@ -93345,6 +93355,10 @@ function GetfloatPrecision(symbol) //获取小数位数
|
|
|
93345
93355
|
else if (MARKET_SUFFIX_NAME.IsHSX(upperSymbol)) defaultfloatPrecision=MARKET_SUFFIX_NAME.GetHSXDecimal(upperSymbol);
|
|
93346
93356
|
else if (MARKET_SUFFIX_NAME.IsHNX(upperSymbol)) defaultfloatPrecision=MARKET_SUFFIX_NAME.GetHNXDecimal(upperSymbol);
|
|
93347
93357
|
else if (MARKET_SUFFIX_NAME.IsUPCOM(upperSymbol)) defaultfloatPrecision=MARKET_SUFFIX_NAME.GetUPCOMDecimal(upperSymbol);
|
|
93358
|
+
|
|
93359
|
+
else if (MARKET_SUFFIX_NAME.IsSZ(upperSymbol)) defaultfloatPrecision=MARKET_SUFFIX_NAME.GetSZDecimal(upperSymbol);
|
|
93360
|
+
else if (MARKET_SUFFIX_NAME.IsSH(upperSymbol)) defaultfloatPrecision=MARKET_SUFFIX_NAME.GetSHDecimal(upperSymbol);
|
|
93361
|
+
|
|
93348
93362
|
else defaultfloatPrecision=MARKET_SUFFIX_NAME.GetDefaultDecimal(upperSymbol);
|
|
93349
93363
|
|
|
93350
93364
|
return defaultfloatPrecision;
|
|
@@ -96595,6 +96609,7 @@ function JSAlgorithm(errorHandler,symbolData)
|
|
|
96595
96609
|
|
|
96596
96610
|
if (!Array.isArray(dayCount))
|
|
96597
96611
|
{
|
|
96612
|
+
dayCount=parseInt(dayCount); //转整形
|
|
96598
96613
|
if (dayCount<=0) dayCount=1;
|
|
96599
96614
|
if (!data || !data.length) return result;
|
|
96600
96615
|
|
|
@@ -96702,6 +96717,7 @@ function JSAlgorithm(errorHandler,symbolData)
|
|
|
96702
96717
|
}
|
|
96703
96718
|
else
|
|
96704
96719
|
{
|
|
96720
|
+
dayCount=parseInt(dayCount); //转整形
|
|
96705
96721
|
if (dayCount<=0) return result;
|
|
96706
96722
|
|
|
96707
96723
|
var offset=0;
|
|
@@ -97232,6 +97248,7 @@ function JSAlgorithm(errorHandler,symbolData)
|
|
|
97232
97248
|
else
|
|
97233
97249
|
{
|
|
97234
97250
|
if (!IFrameSplitOperator.IsNonEmptyArray(data)) return result;
|
|
97251
|
+
n=parseInt(n);
|
|
97235
97252
|
if (n<=0) n=data.length;
|
|
97236
97253
|
else if (n>data.length) n=data.length;
|
|
97237
97254
|
|
|
@@ -97330,6 +97347,7 @@ function JSAlgorithm(errorHandler,symbolData)
|
|
|
97330
97347
|
else
|
|
97331
97348
|
{
|
|
97332
97349
|
if (!IFrameSplitOperator.IsNonEmptyArray(data)) return result;
|
|
97350
|
+
n=parseInt(n);
|
|
97333
97351
|
if (n<=0) n=data.length;
|
|
97334
97352
|
else if (n>data.length) n=data.length;
|
|
97335
97353
|
|
|
@@ -130123,7 +130141,7 @@ function ScrollBarBGChart()
|
|
|
130123
130141
|
|
|
130124
130142
|
|
|
130125
130143
|
|
|
130126
|
-
var HQCHART_VERSION="1.1.
|
|
130144
|
+
var HQCHART_VERSION="1.1.13050";
|
|
130127
130145
|
|
|
130128
130146
|
function PrintHQChartVersion()
|
|
130129
130147
|
{
|
|
@@ -90044,6 +90044,16 @@ var MARKET_SUFFIX_NAME=
|
|
|
90044
90044
|
return 2;
|
|
90045
90045
|
},
|
|
90046
90046
|
|
|
90047
|
+
GetSHDecimal:function(symbol)
|
|
90048
|
+
{
|
|
90049
|
+
return 2;
|
|
90050
|
+
},
|
|
90051
|
+
|
|
90052
|
+
GetSZDecimal:function(symbol)
|
|
90053
|
+
{
|
|
90054
|
+
return 2;
|
|
90055
|
+
},
|
|
90056
|
+
|
|
90047
90057
|
GetFHKDecimal:function(symbol) //港股指数期货 小数位数
|
|
90048
90058
|
{
|
|
90049
90059
|
return 0;
|
|
@@ -93389,6 +93399,10 @@ function GetfloatPrecision(symbol) //获取小数位数
|
|
|
93389
93399
|
else if (MARKET_SUFFIX_NAME.IsHSX(upperSymbol)) defaultfloatPrecision=MARKET_SUFFIX_NAME.GetHSXDecimal(upperSymbol);
|
|
93390
93400
|
else if (MARKET_SUFFIX_NAME.IsHNX(upperSymbol)) defaultfloatPrecision=MARKET_SUFFIX_NAME.GetHNXDecimal(upperSymbol);
|
|
93391
93401
|
else if (MARKET_SUFFIX_NAME.IsUPCOM(upperSymbol)) defaultfloatPrecision=MARKET_SUFFIX_NAME.GetUPCOMDecimal(upperSymbol);
|
|
93402
|
+
|
|
93403
|
+
else if (MARKET_SUFFIX_NAME.IsSZ(upperSymbol)) defaultfloatPrecision=MARKET_SUFFIX_NAME.GetSZDecimal(upperSymbol);
|
|
93404
|
+
else if (MARKET_SUFFIX_NAME.IsSH(upperSymbol)) defaultfloatPrecision=MARKET_SUFFIX_NAME.GetSHDecimal(upperSymbol);
|
|
93405
|
+
|
|
93392
93406
|
else defaultfloatPrecision=MARKET_SUFFIX_NAME.GetDefaultDecimal(upperSymbol);
|
|
93393
93407
|
|
|
93394
93408
|
return defaultfloatPrecision;
|
|
@@ -96639,6 +96653,7 @@ function JSAlgorithm(errorHandler,symbolData)
|
|
|
96639
96653
|
|
|
96640
96654
|
if (!Array.isArray(dayCount))
|
|
96641
96655
|
{
|
|
96656
|
+
dayCount=parseInt(dayCount); //转整形
|
|
96642
96657
|
if (dayCount<=0) dayCount=1;
|
|
96643
96658
|
if (!data || !data.length) return result;
|
|
96644
96659
|
|
|
@@ -96746,6 +96761,7 @@ function JSAlgorithm(errorHandler,symbolData)
|
|
|
96746
96761
|
}
|
|
96747
96762
|
else
|
|
96748
96763
|
{
|
|
96764
|
+
dayCount=parseInt(dayCount); //转整形
|
|
96749
96765
|
if (dayCount<=0) return result;
|
|
96750
96766
|
|
|
96751
96767
|
var offset=0;
|
|
@@ -97276,6 +97292,7 @@ function JSAlgorithm(errorHandler,symbolData)
|
|
|
97276
97292
|
else
|
|
97277
97293
|
{
|
|
97278
97294
|
if (!IFrameSplitOperator.IsNonEmptyArray(data)) return result;
|
|
97295
|
+
n=parseInt(n);
|
|
97279
97296
|
if (n<=0) n=data.length;
|
|
97280
97297
|
else if (n>data.length) n=data.length;
|
|
97281
97298
|
|
|
@@ -97374,6 +97391,7 @@ function JSAlgorithm(errorHandler,symbolData)
|
|
|
97374
97391
|
else
|
|
97375
97392
|
{
|
|
97376
97393
|
if (!IFrameSplitOperator.IsNonEmptyArray(data)) return result;
|
|
97394
|
+
n=parseInt(n);
|
|
97377
97395
|
if (n<=0) n=data.length;
|
|
97378
97396
|
else if (n>data.length) n=data.length;
|
|
97379
97397
|
|
|
@@ -130281,7 +130299,7 @@ function HQChartScriptWorker()
|
|
|
130281
130299
|
|
|
130282
130300
|
|
|
130283
130301
|
|
|
130284
|
-
var HQCHART_VERSION="1.1.
|
|
130302
|
+
var HQCHART_VERSION="1.1.13050";
|
|
130285
130303
|
|
|
130286
130304
|
function PrintHQChartVersion()
|
|
130287
130305
|
{
|