hqchart 1.1.14388 → 1.1.14404

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.
@@ -293,6 +293,36 @@ HQData.Minute_RequestPopMinuteData=function(data, callback)
293
293
  }
294
294
 
295
295
 
296
+ HQData.KLine_RequestMulitDayMinuteData=function(data, callback)
297
+ {
298
+ data.PreventDefault=true;
299
+ var symbol=data.Request.Data.symbol; //请求的股票代码
300
+
301
+ console.log(`[HQData::KLine_RequestMulitDayMinuteData] Symbol=${symbol}`);
302
+
303
+ var fullData=HQData.GetMulitDayMinuteDataBySymbol(symbol);
304
+
305
+ var aryKLine=[];
306
+ var aryBreakPoint=[];
307
+ for(var i=fullData.length-1;i>=0;--i)
308
+ {
309
+ var dayItem=fullData[i];
310
+ var yClose=dayItem.yclose
311
+ for(var j=0;j<dayItem.minute.length;++j)
312
+ {
313
+ var minItem=dayItem.minute[j];
314
+ var kItem=[dayItem.date, yClose, minItem[1], minItem[2], minItem[3], minItem[4],minItem[5],minItem[6], minItem[0] ];
315
+ aryKLine.push(kItem);
316
+ }
317
+
318
+ aryBreakPoint.push({ Date:dayItem.date, Time:1500 })
319
+ }
320
+
321
+ var hqchartData={ name:symbol, symbol:symbol, data:aryKLine, ver:2.0, AryBreakPoint:aryBreakPoint };
322
+ callback(hqchartData);
323
+ }
324
+
325
+
296
326
  HQData.Minute_RequestHistoryMinuteData=function(data, callback)
297
327
  {
298
328
  data.PreventDefault=true;
@@ -1754,6 +1784,19 @@ HQData.GetDayMinuteDataBySymbol=function(symbol)
1754
1784
 
1755
1785
  if (!data) return null;
1756
1786
 
1787
+ //生成测试均价
1788
+ var total=0, count=0;
1789
+ for(var i=0;i<data.stock[0].minute.length;++i)
1790
+ {
1791
+ var item=data.stock[0].minute[i];
1792
+ if (IFrameSplitOperator.IsPlusNumber(item.price))
1793
+ {
1794
+ total+=item.price;
1795
+ ++count;
1796
+ item.avprice=total/count;
1797
+ }
1798
+ }
1799
+
1757
1800
  /*
1758
1801
  var aryMinute=[];
1759
1802
  for(var i=0;i<data.stock[0].minute.length;++i)
@@ -1800,26 +1843,23 @@ HQData.GetMulitDayMinuteDataBySymbol=function(symbol)
1800
1843
 
1801
1844
  if (!data) return null;
1802
1845
 
1803
- /*
1804
- var aryDay=[];
1846
+ //生成测试均价
1805
1847
  for(var i=0;i<data.data.length;++i)
1806
1848
  {
1807
1849
  var dayItem=data.data[i];
1808
-
1809
- var newDayItem={ minute:[], date:dayItem.date, close:dayItem.close, yclose:dayItem.yclose };
1850
+ var total=0, count=0;
1810
1851
  for(var j=0;j<dayItem.minute.length;++j)
1811
1852
  {
1812
1853
  var item=dayItem.minute[j];
1813
- newDayItem.minute[j]=item.slice(0,7);
1854
+ if (IFrameSplitOperator.IsPlusNumber(item[2]))
1855
+ {
1856
+ total+=item[2];
1857
+ ++count;
1858
+ item[7]=total/count;
1859
+ }
1814
1860
  }
1815
-
1816
-
1817
- aryDay.push(newDayItem);
1818
1861
  }
1819
- data.data=aryDay;
1820
- */
1821
-
1822
-
1862
+
1823
1863
  return data.data;
1824
1864
  }
1825
1865
 
@@ -1870,6 +1910,8 @@ HQData.Report_APIIndex=function(data, callback)
1870
1910
  HQData.APIIndex_MULTI_BAR(data, callback);
1871
1911
  else if (request.Data.indexname=="API_MULTI_TEXT")
1872
1912
  HQData.APIIndex_MULTI_TEXT(data, callback);
1913
+ else if (request.Data.indexname=="API_PARTLINE")
1914
+ HQData.APIIndex_PARTLINE(data, callback);
1873
1915
 
1874
1916
  }
1875
1917
 
@@ -2111,11 +2153,51 @@ HQData.APIIndex_MULTI_LINE=function(data, callback)
2111
2153
  }
2112
2154
  line3.Draw.DrawData.push(point3);
2113
2155
 
2156
+
2157
+ var point1={ Color:'rgb(0,0,255)', Point:[] };
2158
+ var point2={ Color:'rgb(255,140,0)', Point:[] };
2159
+ var point3={ Color:'rgb(255, 255, 0)', Point:[] };
2160
+ var colorLine=
2161
+ {
2162
+ name:'MULTI_LINE', type:1,
2163
+
2164
+ Draw:
2165
+ {
2166
+ DrawType:'MULTI_LINE', DrawData:[point1,point2,point3],
2167
+ LineWidth:2,
2168
+ }, //绘制线段数组
2169
+
2170
+ IsShowTitle:false
2171
+ };
2172
+
2173
+
2174
+ var index=kData.Data.length-50;
2175
+ if (index<0) index=0;
2176
+ for(var j=0; index<kData.Data.length && j<10; ++index, ++j)
2177
+ {
2178
+ var item=kData.Data[index];
2179
+ point1.Point.push({Date:item.Date, Time:item.Time, Value:item.Close});
2180
+ }
2181
+
2182
+ --index;
2183
+ for(var j=0; index<kData.Data.length && j<10; ++index, ++j)
2184
+ {
2185
+ var item=kData.Data[index];
2186
+ point2.Point.push({Date:item.Date, Time:item.Time, Value:item.Close});
2187
+ }
2188
+
2189
+ --index;
2190
+ for(var j=0; index<kData.Data.length && j<10; ++index, ++j)
2191
+ {
2192
+ var item=kData.Data[index];
2193
+ point3.Point.push({Date:item.Date, Time:item.Time, Value:item.Close});
2194
+ }
2195
+
2114
2196
  var apiData=
2115
2197
  {
2116
2198
  code:0,
2117
2199
  stock:{ name:hqchart.Name, symbol:hqchart.Symbol },
2118
- outdata: { date:kData.GetDate(), time:kData.GetTime(), outvar:[line3] }
2200
+ outdata: { date:kData.GetDate(), time:kData.GetTime(), outvar:[line3,colorLine] }
2119
2201
  };
2120
2202
 
2121
2203
  console.log('[HQData.APIIndex_MULTI_LINE] apiData ', apiData);
@@ -2632,3 +2714,49 @@ HQData.APIIndex_MULTI_TEXT=function(data, callback)
2632
2714
  }
2633
2715
 
2634
2716
 
2717
+ HQData.APIIndex_PARTLINE=function(data, callback)
2718
+ {
2719
+ data.PreventDefault=true;
2720
+ var hqchart=data.HQChart;
2721
+ var kData=hqchart.GetKData();
2722
+
2723
+
2724
+ var lineData=
2725
+ {
2726
+ name:'PARTLINE', type:1,
2727
+ Draw:
2728
+ {
2729
+ DrawType:'PARTLINE',
2730
+ DrawData: [],
2731
+ LineWidth:"LINETHICK2",
2732
+ IsDotLine:true,
2733
+ LineDash:[10,5]
2734
+ }
2735
+ };
2736
+
2737
+ var colorIndex=0;
2738
+ var ARRAY_COLOR=["rgb(0, 0 ,255)", "rgb(255,0,255)", "rgb(255,165,0)"];
2739
+ for(var i=0;i<kData.Data.length;++i)
2740
+ {
2741
+ var kItem=kData.Data[i];
2742
+
2743
+ var color=ARRAY_COLOR[colorIndex%ARRAY_COLOR.length];
2744
+
2745
+ lineData.Draw.DrawData.push({ Value:kItem.Close, RGB:color});
2746
+
2747
+ if (i%10==3) ++colorIndex;
2748
+ }
2749
+
2750
+
2751
+ var apiData=
2752
+ {
2753
+ code:0,
2754
+ stock:{ name:hqchart.Name, symbol:hqchart.Symbol },
2755
+ outdata: { date:kData.GetDate(), time:kData.GetTime(), outvar:[lineData] }
2756
+ };
2757
+
2758
+ console.log('[HQData.APIIndex_PARTLINE] apiData ', apiData);
2759
+ callback(apiData);
2760
+ }
2761
+
2762
+