hqchart 1.1.12836 → 1.1.12845
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.NetworkFilterTest.vue.js +2 -2
- package/lib/umychart.vue.js +13 -13
- package/package.json +1 -1
- package/src/jscommon/umychart.NetworkFilterTest.js +94 -0
- package/src/jscommon/umychart.complier.js +4 -4
- package/src/jscommon/umychart.js +52 -36
- package/src/jscommon/umychart.testdata/60000.sh.BlockTrading.js +967 -0
- package/src/jscommon/umychart.testdata/60000.sh.NewsInteract.js +7732 -0
- package/src/jscommon/umychart.testdata/60000.sh.TradeDetal.js +70 -0
- package/src/jscommon/umychart.testdata.js +94 -0
- package/src/jscommon/umychart.uniapp.h5/umychart.uniapp.h5.js +57 -41
- package/src/jscommon/umychart.version.js +1 -1
- package/src/jscommon/umychart.vue/umychart.NetworkFilterTest.vue.js +94 -0
- package/src/jscommon/umychart.vue/umychart.vue.js +57 -41
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
var TEST_TRADE_DETAL_DATA={
|
|
2
|
+
"stock": [
|
|
3
|
+
{
|
|
4
|
+
"count": 4,
|
|
5
|
+
"stockday": [
|
|
6
|
+
{
|
|
7
|
+
"date": 20160311,
|
|
8
|
+
"tradedetail": [
|
|
9
|
+
{
|
|
10
|
+
"type": 3,
|
|
11
|
+
"typeexplain": "跌幅偏离值达7%的证券"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"fweek": {
|
|
15
|
+
"week1": 4.3017088980553915,
|
|
16
|
+
"week4": 3.7124337065409545
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"date": 20170908,
|
|
21
|
+
"tradedetail": [
|
|
22
|
+
{
|
|
23
|
+
"type": 6,
|
|
24
|
+
"typeexplain": "单只标的证券的当日融资买入数量达到当日该证券总交易量的50%以上"
|
|
25
|
+
}
|
|
26
|
+
],
|
|
27
|
+
"fweek": {
|
|
28
|
+
"week1": -1.3814274750575595,
|
|
29
|
+
"week4": 0.15349194167306215
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"date": 20170927,
|
|
34
|
+
"tradedetail": [
|
|
35
|
+
{
|
|
36
|
+
"type": 6,
|
|
37
|
+
"typeexplain": "单只标的证券的当日融资买入数量达到当日该证券总交易量的50%以上"
|
|
38
|
+
}
|
|
39
|
+
],
|
|
40
|
+
"fweek": {
|
|
41
|
+
"week1": 1.9455252918287937,
|
|
42
|
+
"week4": -1.867704280155642
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"date": 20171110,
|
|
47
|
+
"tradedetail": [
|
|
48
|
+
{
|
|
49
|
+
"type": 6,
|
|
50
|
+
"typeexplain": "单只标的证券的当日融资买入数量达到当日该证券总交易量的50%以上"
|
|
51
|
+
}
|
|
52
|
+
],
|
|
53
|
+
"fweek": {
|
|
54
|
+
"week1": -1.9002375296912115,
|
|
55
|
+
"week4": 2.6128266033254155
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
],
|
|
59
|
+
"symbol": "600000.sh",
|
|
60
|
+
"name": "浦发银行"
|
|
61
|
+
}
|
|
62
|
+
],
|
|
63
|
+
"start": 0,
|
|
64
|
+
"end": 0,
|
|
65
|
+
"count": 1,
|
|
66
|
+
"ticket": 0,
|
|
67
|
+
|
|
68
|
+
"message": null,
|
|
69
|
+
"code": 0,
|
|
70
|
+
}
|
|
@@ -42,6 +42,29 @@ HQData.NetworkFilter=function(data, callback)
|
|
|
42
42
|
case "JSSymbolData::GetVariantData": //额外的变量数据
|
|
43
43
|
HQData.RequestIndexVariantData(data,callback);
|
|
44
44
|
break;
|
|
45
|
+
|
|
46
|
+
case "AnnouncementInfo::RequestData":
|
|
47
|
+
HQData.AnnouncementInfo_RequestData(data,callback);
|
|
48
|
+
break;
|
|
49
|
+
|
|
50
|
+
case "PforecastInfo::RequestData":
|
|
51
|
+
HQData.PforecastInfo_RequestData(data,callback);
|
|
52
|
+
break;
|
|
53
|
+
|
|
54
|
+
case "InvestorInfo::RequestData":
|
|
55
|
+
HQData.InvestorInfo_RequestData(data,callback);
|
|
56
|
+
break;
|
|
57
|
+
|
|
58
|
+
case "ResearchInfo::RequestData":
|
|
59
|
+
break;
|
|
60
|
+
|
|
61
|
+
case "BlockTrading::RequestData":
|
|
62
|
+
HQData.BlockTrading_RequestData(data,callback);
|
|
63
|
+
break;
|
|
64
|
+
|
|
65
|
+
case "TradeDetail::RequestData":
|
|
66
|
+
HQData.TradeDetail_RequestData(data,callback);
|
|
67
|
+
break;
|
|
45
68
|
}
|
|
46
69
|
}
|
|
47
70
|
|
|
@@ -167,3 +190,74 @@ HQData.RequestIndexVariantData=function(data,callback)
|
|
|
167
190
|
}
|
|
168
191
|
|
|
169
192
|
}
|
|
193
|
+
|
|
194
|
+
HQData.AnnouncementInfo_RequestData=function(data,callback)
|
|
195
|
+
{
|
|
196
|
+
data.PreventDefault=true;
|
|
197
|
+
var symbol=data.Request.Symbol;
|
|
198
|
+
|
|
199
|
+
var hqchartData={ symbol:symbol, report:[] };
|
|
200
|
+
|
|
201
|
+
var kData=data.HQChart.ChartPaint[0].Data;
|
|
202
|
+
for(var i=0, j=1;i<kData.Data.length;++i)
|
|
203
|
+
{
|
|
204
|
+
var kItem=kData.Data[i];
|
|
205
|
+
if (i%10!=4) continue;
|
|
206
|
+
|
|
207
|
+
var itemReport={ releasedate:kItem.Date, time:kItem.Time, title:`公告(${j}) xxxx`, }
|
|
208
|
+
|
|
209
|
+
hqchartData.report.push(itemReport);
|
|
210
|
+
|
|
211
|
+
++j;
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
callback(hqchartData);
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
HQData.PforecastInfo_RequestData=function(data,callback)
|
|
219
|
+
{
|
|
220
|
+
data.PreventDefault=true;
|
|
221
|
+
var symbol=data.Request.Symbol;
|
|
222
|
+
|
|
223
|
+
var hqchartData={ symbol:symbol, report:[] };
|
|
224
|
+
|
|
225
|
+
var kData=data.HQChart.ChartPaint[0].Data;
|
|
226
|
+
for(var i=0, j=1;i<kData.Data.length;++i)
|
|
227
|
+
{
|
|
228
|
+
var kItem=kData.Data[i];
|
|
229
|
+
if (i%10!=4) continue;
|
|
230
|
+
|
|
231
|
+
var itemReport={ date:kItem.Date, time:kItem.Time, title:`公告(${j}) xxxx`, }
|
|
232
|
+
|
|
233
|
+
hqchartData.report.push(itemReport);
|
|
234
|
+
|
|
235
|
+
++j;
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
callback(hqchartData);
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
HQData.InvestorInfo_RequestData=function(data,callback)
|
|
242
|
+
{
|
|
243
|
+
data.PreventDefault=true;
|
|
244
|
+
var symbol=data.Request.Symbol;
|
|
245
|
+
|
|
246
|
+
callback(TEST_NEWSINTERACT_DATA);
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
HQData.BlockTrading_RequestData=function(data,callback)
|
|
250
|
+
{
|
|
251
|
+
data.PreventDefault=true;
|
|
252
|
+
var symbol=data.Request.Symbol;
|
|
253
|
+
|
|
254
|
+
callback(TEST_BLOCK_TRADING_DATA);
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
HQData.TradeDetail_RequestData=function(data,callback)
|
|
258
|
+
{
|
|
259
|
+
data.PreventDefault=true;
|
|
260
|
+
var symbol=data.Request.Symbol;
|
|
261
|
+
|
|
262
|
+
callback(TEST_TRADE_DETAL_DATA);
|
|
263
|
+
}
|
|
@@ -37722,49 +37722,37 @@ function ChartMACD()
|
|
|
37722
37722
|
return this.PtInBar(x, y, { BarWidth:barWidth })
|
|
37723
37723
|
}
|
|
37724
37724
|
|
|
37725
|
-
this.
|
|
37725
|
+
this.DrawBars=function(lineWidth, bUpBar)
|
|
37726
37726
|
{
|
|
37727
|
-
if (!this.IsShow || this.ChartFrame.IsMinSize || !this.IsVisible) return;
|
|
37728
|
-
if (this.IsShowIndexTitleOnly()) return;
|
|
37729
|
-
if (this.IsHideScriptIndex()) return;
|
|
37730
|
-
|
|
37731
|
-
if (this.NotSupportMessage)
|
|
37732
|
-
{
|
|
37733
|
-
this.DrawNotSupportmessage();
|
|
37734
|
-
return;
|
|
37735
|
-
}
|
|
37736
|
-
|
|
37737
|
-
if (this.ChartFrame.IsHScreen===true)
|
|
37738
|
-
{
|
|
37739
|
-
this.HScreenDraw();
|
|
37740
|
-
return;
|
|
37741
|
-
}
|
|
37742
|
-
|
|
37743
37727
|
var isMinute=this.IsMinuteFrame();
|
|
37728
|
+
var border=this.ChartBorder.GetBorder();
|
|
37744
37729
|
var dataWidth=this.ChartFrame.DataWidth;
|
|
37745
37730
|
var distanceWidth=this.ChartFrame.DistanceWidth;
|
|
37746
|
-
var
|
|
37731
|
+
var xPointCount=this.ChartFrame.XPointCount;
|
|
37747
37732
|
var xOffset=border.LeftEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;
|
|
37733
|
+
|
|
37748
37734
|
var chartright=border.RightEx;
|
|
37749
|
-
var xPointCount=this.ChartFrame.XPointCount;
|
|
37750
37735
|
var lockRect=this.GetLockRect();
|
|
37751
37736
|
if (lockRect) chartright=lockRect.Left;
|
|
37752
37737
|
|
|
37753
|
-
|
|
37754
|
-
|
|
37738
|
+
if (bUpBar) this.Canvas.strokeStyle=this.UpColor;
|
|
37739
|
+
else this.Canvas.strokeStyle=this.DownColor;
|
|
37740
|
+
|
|
37755
37741
|
var yBottom=this.ChartFrame.GetYFromData(0);
|
|
37756
|
-
|
|
37757
|
-
var
|
|
37758
|
-
if (this.LineWidth==50) lineWidth=dataWidth;
|
|
37759
|
-
else if (lineWidth>dataWidth) lineWidth=dataWidth;
|
|
37760
|
-
|
|
37761
|
-
var backupLineWidth=this.Canvas.lineWidth;
|
|
37762
|
-
this.Canvas.lineWidth=lineWidth;
|
|
37742
|
+
this.Canvas.beginPath();
|
|
37743
|
+
var drawCount=0;
|
|
37763
37744
|
for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j,xOffset+=(dataWidth+distanceWidth))
|
|
37764
|
-
//for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j)
|
|
37765
37745
|
{
|
|
37766
37746
|
var value=this.Data.Data[i];
|
|
37767
37747
|
if (value==null) continue;
|
|
37748
|
+
if (bUpBar)
|
|
37749
|
+
{
|
|
37750
|
+
if (value<0) continue;
|
|
37751
|
+
}
|
|
37752
|
+
else
|
|
37753
|
+
{
|
|
37754
|
+
if (value>=0) continue;
|
|
37755
|
+
}
|
|
37768
37756
|
|
|
37769
37757
|
if (isMinute)
|
|
37770
37758
|
{
|
|
@@ -37777,21 +37765,49 @@ function ChartMACD()
|
|
|
37777
37765
|
if (right>chartright) break;
|
|
37778
37766
|
var x=left+(right-left)/2;
|
|
37779
37767
|
}
|
|
37780
|
-
var y=this.ChartFrame.GetYFromData(value);
|
|
37781
37768
|
|
|
37782
37769
|
if (x>chartright) break;
|
|
37783
37770
|
|
|
37771
|
+
var y=this.ChartFrame.GetYFromData(value);
|
|
37784
37772
|
var xFix=ToFixedPoint2(lineWidth, x); //毛边修正
|
|
37785
|
-
this.Canvas.beginPath();
|
|
37786
37773
|
this.Canvas.moveTo(xFix,yBottom);
|
|
37787
37774
|
this.Canvas.lineTo(xFix,y);
|
|
37775
|
+
++drawCount;
|
|
37776
|
+
}
|
|
37788
37777
|
|
|
37789
|
-
|
|
37790
|
-
|
|
37791
|
-
|
|
37792
|
-
|
|
37778
|
+
if (drawCount>0) this.Canvas.stroke();
|
|
37779
|
+
}
|
|
37780
|
+
|
|
37781
|
+
this.Draw=function()
|
|
37782
|
+
{
|
|
37783
|
+
if (!this.IsShow || this.ChartFrame.IsMinSize || !this.IsVisible) return;
|
|
37784
|
+
if (this.IsShowIndexTitleOnly()) return;
|
|
37785
|
+
if (this.IsHideScriptIndex()) return;
|
|
37786
|
+
|
|
37787
|
+
if (this.NotSupportMessage)
|
|
37788
|
+
{
|
|
37789
|
+
this.DrawNotSupportmessage();
|
|
37790
|
+
return;
|
|
37791
|
+
}
|
|
37792
|
+
|
|
37793
|
+
if (this.ChartFrame.IsHScreen===true)
|
|
37794
|
+
{
|
|
37795
|
+
this.HScreenDraw();
|
|
37796
|
+
return;
|
|
37793
37797
|
}
|
|
37794
37798
|
|
|
37799
|
+
var dataWidth=this.ChartFrame.DataWidth;
|
|
37800
|
+
var lineWidth=this.LineWidth*GetDevicePixelRatio();
|
|
37801
|
+
if (this.LineWidth==50) lineWidth=dataWidth;
|
|
37802
|
+
else if (lineWidth>dataWidth) lineWidth=dataWidth;
|
|
37803
|
+
|
|
37804
|
+
var backupLineWidth=this.Canvas.lineWidth;
|
|
37805
|
+
this.Canvas.lineWidth=lineWidth;
|
|
37806
|
+
|
|
37807
|
+
//上下分开画
|
|
37808
|
+
this.DrawBars(lineWidth, true);
|
|
37809
|
+
this.DrawBars(lineWidth, false);
|
|
37810
|
+
|
|
37795
37811
|
this.Canvas.lineWidth=backupLineWidth;
|
|
37796
37812
|
}
|
|
37797
37813
|
|
|
@@ -92729,7 +92745,7 @@ function MinuteCoordinateData()
|
|
|
92729
92745
|
{
|
|
92730
92746
|
Full: //完整模式
|
|
92731
92747
|
[
|
|
92732
|
-
[0, 0, "rgb(200,200,200)", "09:30"], //[0]=索引 [1]=线段类型 [2]=文字颜色(弃用) [3]=刻度文字 [4]=线段颜色 [5]=背景色
|
|
92748
|
+
[0, 0, "rgb(200,200,200)", "09:30"], //[0]=索引 [1]=线段类型(预留) [2]=文字颜色(弃用) [3]=刻度文字 [4]=线段颜色 [5]=背景色
|
|
92733
92749
|
[31, 0, "RGB(200,200,200)", "10:00"],
|
|
92734
92750
|
[61, 0, "RGB(200,200,200)", "10:30"],
|
|
92735
92751
|
[91, 0, "RGB(200,200,200)", "11:00"],
|
|
@@ -113554,16 +113570,16 @@ function JSExecute(ast,option)
|
|
|
113554
113570
|
case Syntax.UnaryExpression:
|
|
113555
113571
|
if (node.Operator=='-')
|
|
113556
113572
|
{
|
|
113557
|
-
|
|
113573
|
+
var value=this.GetNodeValue(node.Argument);
|
|
113558
113574
|
return this.Algorithm.Subtract(0,value);
|
|
113559
113575
|
}
|
|
113560
113576
|
return node.Argument.Value;
|
|
113561
113577
|
case Syntax.Identifier:
|
|
113562
|
-
|
|
113578
|
+
var value=this.ReadVariable(node.Name,node);
|
|
113563
113579
|
return value;
|
|
113564
113580
|
case Syntax.BinaryExpression:
|
|
113565
113581
|
case Syntax.LogicalExpression:
|
|
113566
|
-
return node
|
|
113582
|
+
return this.VisitBinaryExpression(node);
|
|
113567
113583
|
case Syntax.CallExpression:
|
|
113568
113584
|
return this.VisitCallExpression(node);
|
|
113569
113585
|
case Syntax.MemberExpression:
|
|
@@ -114615,7 +114631,7 @@ function JSExplainer(ast,option)
|
|
|
114615
114631
|
return value;
|
|
114616
114632
|
case Syntax.BinaryExpression:
|
|
114617
114633
|
case Syntax.LogicalExpression:
|
|
114618
|
-
return node
|
|
114634
|
+
return this.VisitBinaryExpression(node);
|
|
114619
114635
|
case Syntax.CallExpression:
|
|
114620
114636
|
return this.VisitCallExpression(node);
|
|
114621
114637
|
default:
|
|
@@ -131864,7 +131880,7 @@ function ScrollBarBGChart()
|
|
|
131864
131880
|
|
|
131865
131881
|
|
|
131866
131882
|
|
|
131867
|
-
var HQCHART_VERSION="1.1.
|
|
131883
|
+
var HQCHART_VERSION="1.1.12844";
|
|
131868
131884
|
|
|
131869
131885
|
function PrintHQChartVersion()
|
|
131870
131886
|
{
|
|
@@ -48717,6 +48717,29 @@ HQData.NetworkFilter=function(data, callback)
|
|
|
48717
48717
|
case "JSSymbolData::GetVariantData": //额外的变量数据
|
|
48718
48718
|
HQData.RequestIndexVariantData(data,callback);
|
|
48719
48719
|
break;
|
|
48720
|
+
|
|
48721
|
+
case "AnnouncementInfo::RequestData":
|
|
48722
|
+
HQData.AnnouncementInfo_RequestData(data,callback);
|
|
48723
|
+
break;
|
|
48724
|
+
|
|
48725
|
+
case "PforecastInfo::RequestData":
|
|
48726
|
+
HQData.PforecastInfo_RequestData(data,callback);
|
|
48727
|
+
break;
|
|
48728
|
+
|
|
48729
|
+
case "InvestorInfo::RequestData":
|
|
48730
|
+
HQData.InvestorInfo_RequestData(data,callback);
|
|
48731
|
+
break;
|
|
48732
|
+
|
|
48733
|
+
case "ResearchInfo::RequestData":
|
|
48734
|
+
break;
|
|
48735
|
+
|
|
48736
|
+
case "BlockTrading::RequestData":
|
|
48737
|
+
HQData.BlockTrading_RequestData(data,callback);
|
|
48738
|
+
break;
|
|
48739
|
+
|
|
48740
|
+
case "TradeDetail::RequestData":
|
|
48741
|
+
HQData.TradeDetail_RequestData(data,callback);
|
|
48742
|
+
break;
|
|
48720
48743
|
}
|
|
48721
48744
|
}
|
|
48722
48745
|
|
|
@@ -48843,6 +48866,77 @@ HQData.RequestIndexVariantData=function(data,callback)
|
|
|
48843
48866
|
|
|
48844
48867
|
}
|
|
48845
48868
|
|
|
48869
|
+
HQData.AnnouncementInfo_RequestData=function(data,callback)
|
|
48870
|
+
{
|
|
48871
|
+
data.PreventDefault=true;
|
|
48872
|
+
var symbol=data.Request.Symbol;
|
|
48873
|
+
|
|
48874
|
+
var hqchartData={ symbol:symbol, report:[] };
|
|
48875
|
+
|
|
48876
|
+
var kData=data.HQChart.ChartPaint[0].Data;
|
|
48877
|
+
for(var i=0, j=1;i<kData.Data.length;++i)
|
|
48878
|
+
{
|
|
48879
|
+
var kItem=kData.Data[i];
|
|
48880
|
+
if (i%10!=4) continue;
|
|
48881
|
+
|
|
48882
|
+
var itemReport={ releasedate:kItem.Date, time:kItem.Time, title:`公告(${j}) xxxx`, }
|
|
48883
|
+
|
|
48884
|
+
hqchartData.report.push(itemReport);
|
|
48885
|
+
|
|
48886
|
+
++j;
|
|
48887
|
+
}
|
|
48888
|
+
|
|
48889
|
+
callback(hqchartData);
|
|
48890
|
+
}
|
|
48891
|
+
|
|
48892
|
+
|
|
48893
|
+
HQData.PforecastInfo_RequestData=function(data,callback)
|
|
48894
|
+
{
|
|
48895
|
+
data.PreventDefault=true;
|
|
48896
|
+
var symbol=data.Request.Symbol;
|
|
48897
|
+
|
|
48898
|
+
var hqchartData={ symbol:symbol, report:[] };
|
|
48899
|
+
|
|
48900
|
+
var kData=data.HQChart.ChartPaint[0].Data;
|
|
48901
|
+
for(var i=0, j=1;i<kData.Data.length;++i)
|
|
48902
|
+
{
|
|
48903
|
+
var kItem=kData.Data[i];
|
|
48904
|
+
if (i%10!=4) continue;
|
|
48905
|
+
|
|
48906
|
+
var itemReport={ date:kItem.Date, time:kItem.Time, title:`公告(${j}) xxxx`, }
|
|
48907
|
+
|
|
48908
|
+
hqchartData.report.push(itemReport);
|
|
48909
|
+
|
|
48910
|
+
++j;
|
|
48911
|
+
}
|
|
48912
|
+
|
|
48913
|
+
callback(hqchartData);
|
|
48914
|
+
}
|
|
48915
|
+
|
|
48916
|
+
HQData.InvestorInfo_RequestData=function(data,callback)
|
|
48917
|
+
{
|
|
48918
|
+
data.PreventDefault=true;
|
|
48919
|
+
var symbol=data.Request.Symbol;
|
|
48920
|
+
|
|
48921
|
+
callback(TEST_NEWSINTERACT_DATA);
|
|
48922
|
+
}
|
|
48923
|
+
|
|
48924
|
+
HQData.BlockTrading_RequestData=function(data,callback)
|
|
48925
|
+
{
|
|
48926
|
+
data.PreventDefault=true;
|
|
48927
|
+
var symbol=data.Request.Symbol;
|
|
48928
|
+
|
|
48929
|
+
callback(TEST_BLOCK_TRADING_DATA);
|
|
48930
|
+
}
|
|
48931
|
+
|
|
48932
|
+
HQData.TradeDetail_RequestData=function(data,callback)
|
|
48933
|
+
{
|
|
48934
|
+
data.PreventDefault=true;
|
|
48935
|
+
var symbol=data.Request.Symbol;
|
|
48936
|
+
|
|
48937
|
+
callback(TEST_TRADE_DETAL_DATA);
|
|
48938
|
+
}
|
|
48939
|
+
|
|
48846
48940
|
|
|
48847
48941
|
/*暴露外部用的方法*/
|
|
48848
48942
|
export default
|
|
@@ -37766,49 +37766,37 @@ function ChartMACD()
|
|
|
37766
37766
|
return this.PtInBar(x, y, { BarWidth:barWidth })
|
|
37767
37767
|
}
|
|
37768
37768
|
|
|
37769
|
-
this.
|
|
37769
|
+
this.DrawBars=function(lineWidth, bUpBar)
|
|
37770
37770
|
{
|
|
37771
|
-
if (!this.IsShow || this.ChartFrame.IsMinSize || !this.IsVisible) return;
|
|
37772
|
-
if (this.IsShowIndexTitleOnly()) return;
|
|
37773
|
-
if (this.IsHideScriptIndex()) return;
|
|
37774
|
-
|
|
37775
|
-
if (this.NotSupportMessage)
|
|
37776
|
-
{
|
|
37777
|
-
this.DrawNotSupportmessage();
|
|
37778
|
-
return;
|
|
37779
|
-
}
|
|
37780
|
-
|
|
37781
|
-
if (this.ChartFrame.IsHScreen===true)
|
|
37782
|
-
{
|
|
37783
|
-
this.HScreenDraw();
|
|
37784
|
-
return;
|
|
37785
|
-
}
|
|
37786
|
-
|
|
37787
37771
|
var isMinute=this.IsMinuteFrame();
|
|
37772
|
+
var border=this.ChartBorder.GetBorder();
|
|
37788
37773
|
var dataWidth=this.ChartFrame.DataWidth;
|
|
37789
37774
|
var distanceWidth=this.ChartFrame.DistanceWidth;
|
|
37790
|
-
var
|
|
37775
|
+
var xPointCount=this.ChartFrame.XPointCount;
|
|
37791
37776
|
var xOffset=border.LeftEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;
|
|
37777
|
+
|
|
37792
37778
|
var chartright=border.RightEx;
|
|
37793
|
-
var xPointCount=this.ChartFrame.XPointCount;
|
|
37794
37779
|
var lockRect=this.GetLockRect();
|
|
37795
37780
|
if (lockRect) chartright=lockRect.Left;
|
|
37796
37781
|
|
|
37797
|
-
|
|
37798
|
-
|
|
37782
|
+
if (bUpBar) this.Canvas.strokeStyle=this.UpColor;
|
|
37783
|
+
else this.Canvas.strokeStyle=this.DownColor;
|
|
37784
|
+
|
|
37799
37785
|
var yBottom=this.ChartFrame.GetYFromData(0);
|
|
37800
|
-
|
|
37801
|
-
var
|
|
37802
|
-
if (this.LineWidth==50) lineWidth=dataWidth;
|
|
37803
|
-
else if (lineWidth>dataWidth) lineWidth=dataWidth;
|
|
37804
|
-
|
|
37805
|
-
var backupLineWidth=this.Canvas.lineWidth;
|
|
37806
|
-
this.Canvas.lineWidth=lineWidth;
|
|
37786
|
+
this.Canvas.beginPath();
|
|
37787
|
+
var drawCount=0;
|
|
37807
37788
|
for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j,xOffset+=(dataWidth+distanceWidth))
|
|
37808
|
-
//for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j)
|
|
37809
37789
|
{
|
|
37810
37790
|
var value=this.Data.Data[i];
|
|
37811
37791
|
if (value==null) continue;
|
|
37792
|
+
if (bUpBar)
|
|
37793
|
+
{
|
|
37794
|
+
if (value<0) continue;
|
|
37795
|
+
}
|
|
37796
|
+
else
|
|
37797
|
+
{
|
|
37798
|
+
if (value>=0) continue;
|
|
37799
|
+
}
|
|
37812
37800
|
|
|
37813
37801
|
if (isMinute)
|
|
37814
37802
|
{
|
|
@@ -37821,21 +37809,49 @@ function ChartMACD()
|
|
|
37821
37809
|
if (right>chartright) break;
|
|
37822
37810
|
var x=left+(right-left)/2;
|
|
37823
37811
|
}
|
|
37824
|
-
var y=this.ChartFrame.GetYFromData(value);
|
|
37825
37812
|
|
|
37826
37813
|
if (x>chartright) break;
|
|
37827
37814
|
|
|
37815
|
+
var y=this.ChartFrame.GetYFromData(value);
|
|
37828
37816
|
var xFix=ToFixedPoint2(lineWidth, x); //毛边修正
|
|
37829
|
-
this.Canvas.beginPath();
|
|
37830
37817
|
this.Canvas.moveTo(xFix,yBottom);
|
|
37831
37818
|
this.Canvas.lineTo(xFix,y);
|
|
37819
|
+
++drawCount;
|
|
37820
|
+
}
|
|
37832
37821
|
|
|
37833
|
-
|
|
37834
|
-
|
|
37835
|
-
|
|
37836
|
-
|
|
37822
|
+
if (drawCount>0) this.Canvas.stroke();
|
|
37823
|
+
}
|
|
37824
|
+
|
|
37825
|
+
this.Draw=function()
|
|
37826
|
+
{
|
|
37827
|
+
if (!this.IsShow || this.ChartFrame.IsMinSize || !this.IsVisible) return;
|
|
37828
|
+
if (this.IsShowIndexTitleOnly()) return;
|
|
37829
|
+
if (this.IsHideScriptIndex()) return;
|
|
37830
|
+
|
|
37831
|
+
if (this.NotSupportMessage)
|
|
37832
|
+
{
|
|
37833
|
+
this.DrawNotSupportmessage();
|
|
37834
|
+
return;
|
|
37835
|
+
}
|
|
37836
|
+
|
|
37837
|
+
if (this.ChartFrame.IsHScreen===true)
|
|
37838
|
+
{
|
|
37839
|
+
this.HScreenDraw();
|
|
37840
|
+
return;
|
|
37837
37841
|
}
|
|
37838
37842
|
|
|
37843
|
+
var dataWidth=this.ChartFrame.DataWidth;
|
|
37844
|
+
var lineWidth=this.LineWidth*GetDevicePixelRatio();
|
|
37845
|
+
if (this.LineWidth==50) lineWidth=dataWidth;
|
|
37846
|
+
else if (lineWidth>dataWidth) lineWidth=dataWidth;
|
|
37847
|
+
|
|
37848
|
+
var backupLineWidth=this.Canvas.lineWidth;
|
|
37849
|
+
this.Canvas.lineWidth=lineWidth;
|
|
37850
|
+
|
|
37851
|
+
//上下分开画
|
|
37852
|
+
this.DrawBars(lineWidth, true);
|
|
37853
|
+
this.DrawBars(lineWidth, false);
|
|
37854
|
+
|
|
37839
37855
|
this.Canvas.lineWidth=backupLineWidth;
|
|
37840
37856
|
}
|
|
37841
37857
|
|
|
@@ -92773,7 +92789,7 @@ function MinuteCoordinateData()
|
|
|
92773
92789
|
{
|
|
92774
92790
|
Full: //完整模式
|
|
92775
92791
|
[
|
|
92776
|
-
[0, 0, "rgb(200,200,200)", "09:30"], //[0]=索引 [1]=线段类型 [2]=文字颜色(弃用) [3]=刻度文字 [4]=线段颜色 [5]=背景色
|
|
92792
|
+
[0, 0, "rgb(200,200,200)", "09:30"], //[0]=索引 [1]=线段类型(预留) [2]=文字颜色(弃用) [3]=刻度文字 [4]=线段颜色 [5]=背景色
|
|
92777
92793
|
[31, 0, "RGB(200,200,200)", "10:00"],
|
|
92778
92794
|
[61, 0, "RGB(200,200,200)", "10:30"],
|
|
92779
92795
|
[91, 0, "RGB(200,200,200)", "11:00"],
|
|
@@ -113598,16 +113614,16 @@ function JSExecute(ast,option)
|
|
|
113598
113614
|
case Syntax.UnaryExpression:
|
|
113599
113615
|
if (node.Operator=='-')
|
|
113600
113616
|
{
|
|
113601
|
-
|
|
113617
|
+
var value=this.GetNodeValue(node.Argument);
|
|
113602
113618
|
return this.Algorithm.Subtract(0,value);
|
|
113603
113619
|
}
|
|
113604
113620
|
return node.Argument.Value;
|
|
113605
113621
|
case Syntax.Identifier:
|
|
113606
|
-
|
|
113622
|
+
var value=this.ReadVariable(node.Name,node);
|
|
113607
113623
|
return value;
|
|
113608
113624
|
case Syntax.BinaryExpression:
|
|
113609
113625
|
case Syntax.LogicalExpression:
|
|
113610
|
-
return node
|
|
113626
|
+
return this.VisitBinaryExpression(node);
|
|
113611
113627
|
case Syntax.CallExpression:
|
|
113612
113628
|
return this.VisitCallExpression(node);
|
|
113613
113629
|
case Syntax.MemberExpression:
|
|
@@ -114659,7 +114675,7 @@ function JSExplainer(ast,option)
|
|
|
114659
114675
|
return value;
|
|
114660
114676
|
case Syntax.BinaryExpression:
|
|
114661
114677
|
case Syntax.LogicalExpression:
|
|
114662
|
-
return node
|
|
114678
|
+
return this.VisitBinaryExpression(node);
|
|
114663
114679
|
case Syntax.CallExpression:
|
|
114664
114680
|
return this.VisitCallExpression(node);
|
|
114665
114681
|
default:
|
|
@@ -132022,7 +132038,7 @@ function HQChartScriptWorker()
|
|
|
132022
132038
|
|
|
132023
132039
|
|
|
132024
132040
|
|
|
132025
|
-
var HQCHART_VERSION="1.1.
|
|
132041
|
+
var HQCHART_VERSION="1.1.12844";
|
|
132026
132042
|
|
|
132027
132043
|
function PrintHQChartVersion()
|
|
132028
132044
|
{
|