hqchart 1.1.12963 → 1.1.12968
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 +131 -345
- package/package.json +1 -1
- package/src/jscommon/umychart.index.data.js +56 -359
- package/src/jscommon/umychart.js +45 -1
- package/src/jscommon/umychart.uniapp.h5/umychart.uniapp.h5.js +102 -361
- package/src/jscommon/umychart.version.js +1 -1
- package/src/jscommon/umychart.vue/umychart.vue.js +102 -361
package/package.json
CHANGED
|
@@ -120,17 +120,15 @@ function JSIndexScript()
|
|
|
120
120
|
['CJL2', this.CJL], //期货持仓量
|
|
121
121
|
['ASI', this.ASI],['DC', this.DC],['DEMA', this.DEMA],["VWAP", this.VWAP],
|
|
122
122
|
|
|
123
|
+
//指南针
|
|
124
|
+
["ZNZ_CBAND", this.ZNZ_CBAND],["ZNZ_RPY2",this.ZNZ_RPY2],["ZNZ_RPY1", this.ZNZ_RPY1],
|
|
125
|
+
|
|
123
126
|
['飞龙四式', this.Dragon4_Main],['飞龙四式-附图', this.Dragon4_Fig],
|
|
124
127
|
['资金分析', this.FundsAnalysis],['融资占比',this.MarginProportion],['负面新闻', this.NewsNegative],
|
|
125
128
|
['涨跌趋势', this.UpDownAnalyze],['北上资金', this.HK2SHSZ],['股东人数', this.ShareHolder],
|
|
126
129
|
|
|
127
130
|
["两融余额", this.Margin2],["两融余额2", this.Margin3],
|
|
128
|
-
|
|
129
|
-
['Zealink-资金吸筹', this.Zealink_Index1], ['Zealink-牛熊区间', this.Zealink_Index2],['Zealink-持仓信号', this.Zealink_Index3],
|
|
130
|
-
['Zealink-增减持',this.Zealink_Index4],['Zealink-大宗交易', this.Zealink_Index5], ['Zealink-信托持股', this.Zealink_Index6],
|
|
131
|
-
['Zealink-官网新闻', this.Zealink_Index7], ['Zealink-高管要闻', this.Zealink_Index8],['Zealink-股权质押', this.Zealink_Index9],
|
|
132
|
-
['Zealink-操盘BS点', this.Zealink_Index10],['Zealink-操盘BS点2', this.Zealink_Index11],
|
|
133
|
-
|
|
131
|
+
|
|
134
132
|
//外包指标
|
|
135
133
|
['放心股-操盘BS点',this.FXG_BSPoint],
|
|
136
134
|
['放心股-涨停多空线',this.FXG_INDEX],
|
|
@@ -3270,359 +3268,6 @@ EXITLONG: (CROSS(HSL,5) OR CROSS(K,80));'
|
|
|
3270
3268
|
return data;
|
|
3271
3269
|
}
|
|
3272
3270
|
|
|
3273
|
-
|
|
3274
|
-
JSIndexScript.prototype.Zealink_Index1 = function ()
|
|
3275
|
-
{
|
|
3276
|
-
let data =
|
|
3277
|
-
{
|
|
3278
|
-
Name: '资金吸筹', Description: '资金吸筹', IsMainIndex: false,
|
|
3279
|
-
Args: [],
|
|
3280
|
-
Script: //脚本
|
|
3281
|
-
'VAR1:=REF((LOW+OPEN+CLOSE+HIGH)/4,1); \n\
|
|
3282
|
-
VAR2:= SMA(ABS(LOW - VAR1), 13, 1) / SMA(MAX(LOW - VAR1, 0), 10, 1);\n\
|
|
3283
|
-
VAR3:= EMA(VAR2, 10);\n\
|
|
3284
|
-
VAR4:= LLV(LOW, 33);\n\
|
|
3285
|
-
VAR5:= EMA(IF(LOW <= VAR4, VAR3, 0), 3) * 0.2;\n\
|
|
3286
|
-
主力进场: IF(VAR5 > REF(VAR5, 1), VAR5,0), COLORRED, NODRAW;\n\
|
|
3287
|
-
洗盘: IF(VAR5 < REF(VAR5, 1), VAR5,0), COLORYELLOW, NODRAW;\n\
|
|
3288
|
-
STICKLINE(VAR5> REF(VAR5, 1),0, VAR5, 20, 0), COLORRED;\n\
|
|
3289
|
-
STICKLINE(VAR5 < REF(VAR5, 1), 0, VAR5, 20, 0), COLORYELLOW;'
|
|
3290
|
-
};
|
|
3291
|
-
|
|
3292
|
-
return data;
|
|
3293
|
-
}
|
|
3294
|
-
|
|
3295
|
-
JSIndexScript.prototype.Zealink_Index2 = function ()
|
|
3296
|
-
{
|
|
3297
|
-
let data =
|
|
3298
|
-
{
|
|
3299
|
-
Name: '牛熊区间', Description: '牛熊区间', IsMainIndex: false,YSpecificMaxMin:{Max:100,Min:1,Count:4},YSplitScale:[1,50,100],
|
|
3300
|
-
Args: [],
|
|
3301
|
-
Script: //脚本
|
|
3302
|
-
'短高H:=(20*H+19*REF(H,1)+18*REF(H,2)+17*REF(H,3)+16*REF(H,4)+15*REF(H,5)+14*REF(H,6)\n\
|
|
3303
|
-
+ 13 * REF(H, 7) + 12 * REF(H, 8) + 11 * REF(H, 9) + 10 * REF(H, 10) + 9 * REF(H, 11) + 8 * REF(H, 12)\n\
|
|
3304
|
-
+ 7 * REF(H, 13) + 6 * REF(H, 14) + 5 * REF(H, 15) + 4 * REF(H, 16) + 3 * REF(H, 17) + 2 * REF(H, 18) +\n\
|
|
3305
|
-
REF(H, 20))/ 210, COLORBLUE, LINETHICK1;\n\
|
|
3306
|
-
短低L:= (20 * L + 19 * REF(L, 1) + 18 * REF(L, 2) + 17 * REF(L, 3) + 16 * REF(L, 4) + 15 * REF(L, 5) + 14 * REF(L, 6)\n\
|
|
3307
|
-
+ 13 * REF(L, 7) + 12 * REF(L, 8) + 11 * REF(L, 9) + 10 * REF(L, 10) + 9 * REF(L, 11) + 8 * REF(L, 12)\n\
|
|
3308
|
-
+ 7 * REF(L, 13) + 6 * REF(L, 14) + 5 * REF(L, 15) + 4 * REF(L, 16) + 3 * REF(L, 17) + 2 * REF(L, 18) +\n\
|
|
3309
|
-
REF(L, 20)) / 210, COLORBLUE, LINETHICK1;\n\
|
|
3310
|
-
D90H:= EMA(短高H, 90), COLORRED, LINETHICK1;\n\
|
|
3311
|
-
D90L:= EMA(短低L, 90), COLORRED, LINETHICK1;\n\
|
|
3312
|
-
D90差:= D90H - D90L;\n\
|
|
3313
|
-
D90顶:= D90H + D90差 * 2, COLORRED, LINETHICK1;\n\
|
|
3314
|
-
D90底:= D90L - D90差 * 2, COLORRED, LINETHICK1;\n\
|
|
3315
|
-
高0:= (EMA(EMA(H, 25), 25) - EMA(EMA(L, 25), 25)) * 1 + EMA(EMA(H, 25), 25), LINETHICK1, COLORWHITE;\n\
|
|
3316
|
-
低0:= EMA(EMA(L, 25), 25) - (EMA(EMA(H, 25), 25) - EMA(EMA(L, 25), 25)) * 1, LINETHICK1, COLORWHITE;\n\
|
|
3317
|
-
多头定位:= 低0 >= D90底 AND 高0 >= D90顶;\n\
|
|
3318
|
-
空头定位:= 高0 <= D90顶 AND 低0 <= D90底;\n\
|
|
3319
|
-
震荡定位:= 低0 >= D90底 AND 高0 <= D90顶;\n\
|
|
3320
|
-
牛市: IF(多头定位 == 1, 100, 1), COLORRED, NODRAW;\n\
|
|
3321
|
-
熊市: IF(空头定位 == 1, 100, 1), COLORGREEN, NODRAW;\n\
|
|
3322
|
-
震荡: IF(震荡定位 == 1, 100, 1), COLORGRAY, NODRAW;\n\
|
|
3323
|
-
STICKLINE(多头定位 == 1, 100, 1, 100, 0), COLORRED;\n\
|
|
3324
|
-
STICKLINE(空头定位 == 1, 100, 1, 100, 0), COLORGREEN;\n\
|
|
3325
|
-
STICKLINE(震荡定位 == 1, 100, 1, 100, 0), COLORGRAY;'
|
|
3326
|
-
};
|
|
3327
|
-
|
|
3328
|
-
return data;
|
|
3329
|
-
}
|
|
3330
|
-
|
|
3331
|
-
JSIndexScript.prototype.Zealink_Index3 = function ()
|
|
3332
|
-
{
|
|
3333
|
-
let data =
|
|
3334
|
-
{
|
|
3335
|
-
Name: '持仓信号', Description: '持仓信号', IsMainIndex: true,
|
|
3336
|
-
Args: [],
|
|
3337
|
-
Script: //脚本
|
|
3338
|
-
'买线:=EMA(C,2);\n\
|
|
3339
|
-
卖线:=EMA(SLOPE(C,30)*5+C,20); \n\
|
|
3340
|
-
BU:=CROSS(买线,卖线);\n\
|
|
3341
|
-
SEL:=CROSS(卖线,买线);\n\
|
|
3342
|
-
\n\
|
|
3343
|
-
STICKLINE(买线>=卖线 AND CLOSE>OPEN,LOW,HIGH,0,1),COLORRED;\n\
|
|
3344
|
-
STICKLINE(买线>=卖线 AND CLOSE<OPEN,LOW,HIGH,0,1),COLORRED;\n\
|
|
3345
|
-
STICKLINE(买线>=卖线 AND CLOSE>OPEN,CLOSE,OPEN,50,1),COLORRED;\n\
|
|
3346
|
-
STICKLINE(买线>=卖线 AND CLOSE<OPEN,CLOSE,OPEN,50,0),COLORRED;\n\
|
|
3347
|
-
STICKLINE(买线<卖线 AND CLOSE<OPEN,LOW,HIGH,0,1),COLORGREEN;\n\
|
|
3348
|
-
STICKLINE(买线<卖线 AND CLOSE>OPEN,LOW,HIGH,0,1),COLORGREEN;\n\
|
|
3349
|
-
STICKLINE(买线<卖线 AND CLOSE<OPEN,CLOSE,OPEN,50,0),COLORGREEN;\n\
|
|
3350
|
-
STICKLINE(买线<卖线 AND CLOSE>OPEN,CLOSE,OPEN,50,1),COLORGREEN;\n\
|
|
3351
|
-
\n\
|
|
3352
|
-
HHJSJDA:=(3*CLOSE+OPEN+LOW+HIGH)/6;\n\
|
|
3353
|
-
HHJSJDB:(19*HHJSJDA+19*REF(HHJSJDA,1)+18*REF(HHJSJDA,2)+17*REF(HHJSJDA,3)+16*REF(HHJSJDA,4)+15*REF(HHJSJDA,5)+14*REF(HHJSJDA,6)\n\
|
|
3354
|
-
+13*REF(HHJSJDA,7)+12*REF(HHJSJDA,8)+11*REF(HHJSJDA,9)+10*REF(HHJSJDA,10)+9*REF(HHJSJDA,11)+8*REF(HHJSJDA,12)+7*REF(HHJSJDA,13)+6*REF(HHJSJDA,14)+5*REF(HHJSJDA,15)+4*REF(HHJSJDA,16)+3*REF(HHJSJDA,17)+2*REF\n\
|
|
3355
|
-
(HHJSJDA,20)+REF(HHJSJDA,19))/210,COLORYELLOW;\n\
|
|
3356
|
-
HHJSJDC:MA(HHJSJDB,5),COLORRED;\n\
|
|
3357
|
-
\n\
|
|
3358
|
-
SVAR11:=HHV(HIGH,34);\n\
|
|
3359
|
-
SVAR14:=CLOSE-REF(CLOSE,1);\n\
|
|
3360
|
-
SVAR15:=MAX(SVAR14,0);\n\
|
|
3361
|
-
SVAR16:=ABS(SVAR14);\n\
|
|
3362
|
-
SVAR17:=SMA(SVAR15,7,1)/SMA(SVAR16,7,1)*100;\n\
|
|
3363
|
-
SVAR18:=SMA(SVAR15,13,1)/SMA(SVAR16,13,1)*100;\n\
|
|
3364
|
-
SVAR19:=BARSCOUNT(CLOSE);\n\
|
|
3365
|
-
SVAR20:=SMA(MAX(SVAR14,0),6,1)/SMA(ABS(SVAR14),6,1)*100;\n\
|
|
3366
|
-
SVAR21:=(-200)*(HHV(HIGH,60)-CLOSE)/(HHV(HIGH,60)-LLV(LOW,60))+100;\n\
|
|
3367
|
-
SVAR1A:=(CLOSE-LLV(LOW,15))/(HHV(HIGH,15)-LLV(LOW,15))*100;\n\
|
|
3368
|
-
SVAR1B:=SMA((SMA(SVAR1A,4,1)-50)*2,3,1);\n\
|
|
3369
|
-
SVAR1C:=(INDEXC-LLV(INDEXL,14))/(HHV(INDEXH,14)-LLV(INDEXL,14))*100;\n\
|
|
3370
|
-
SVAR1D:=SMA(SVAR1C,4,1);\n\
|
|
3371
|
-
SVAR1E:=SMA(SVAR1D,3,1);\n\
|
|
3372
|
-
SVAR1F:=(HHV(HIGH,30)-CLOSE)/CLOSE*100;\n\
|
|
3373
|
-
SVAR22:=SVAR20<=25 AND SVAR21<-95 AND SVAR1F>20 AND SVAR1B<-30 AND SVAR1E<30 AND SVAR11-CLOSE>=-0.25 AND SVAR17<22 AND SVAR18<28 AND SVAR19>50;\n\
|
|
3374
|
-
BUY3:=CROSS(SVAR22,0.5) AND COUNT(SVAR22==1,10)==1;\n\
|
|
3375
|
-
\n\
|
|
3376
|
-
SVARF:=LOW*0.9;\n\
|
|
3377
|
-
SVAR10X:=100-3*SMA((OPEN-LLV(LOW,75))/(HHV(HIGH,75)-LLV(LOW,75))*100,20,1)+2*SMA(SMA((OPEN-LLV(LOW,75))/(HHV(HIGH,75)-LLV(LOW,75))*100,20,1),15,1);\n\
|
|
3378
|
-
SVAR11X:=SVARF<REF(SVAR10X,1) AND VOL>REF(VOL,1) AND CLOSE>REF(CLOSE,1);\n\
|
|
3379
|
-
BUY2:=SVAR11X AND COUNT(SVAR11X,30)==1;\n\
|
|
3380
|
-
\n\
|
|
3381
|
-
VAR1:=(CLOSE+HIGH+LOW+OPEN)/4;\n\
|
|
3382
|
-
VAR2:=SUMBARS(VOL,CAPITAL);\n\
|
|
3383
|
-
VAR3:=HHV(VAR1,VAR2);\n\
|
|
3384
|
-
VAR4:=LLV(VAR1,VAR2);\n\
|
|
3385
|
-
VAR5:=(2*VAR1-VAR4-REF(VAR4,1))/(VAR3-VAR4);\n\
|
|
3386
|
-
VAR6:=(VAR1-VAR4)/(VAR3-VAR4);\n\
|
|
3387
|
-
VAR7:=IF(VAR1<=VAR4,VAR5*60,VAR6*60);\n\
|
|
3388
|
-
VAR8:=600*(EMA(CLOSE,3)-EMA(LOW,30))/EMA(LOW,30);\n\
|
|
3389
|
-
VAR9:=EMA(VAR8,7);\n\
|
|
3390
|
-
VARC:=HHV(HIGH,9)-LLV(LOW,9);\n\
|
|
3391
|
-
VARD:=HHV(HIGH,9)-CLOSE;\n\
|
|
3392
|
-
VARE:=CLOSE-LLV(LOW,9);\n\
|
|
3393
|
-
VARF:=VARD/VARC*100-70;\n\
|
|
3394
|
-
VAR10:=(CLOSE-LLV(LOW,60))/(HHV(HIGH,60)-LLV(LOW,60))*100;\n\
|
|
3395
|
-
VAR11:=(2*CLOSE+HIGH+LOW)/4;\n\
|
|
3396
|
-
VAR12:=SMA(VARE/VARC*100,3,1);\n\
|
|
3397
|
-
VAR13:=LLV(LOW,34);\n\
|
|
3398
|
-
VAR14:=SMA(VAR12,3,1)-SMA(VARF,9,1);\n\
|
|
3399
|
-
VAR15:=IF(VAR14>100,VAR14-100,0);\n\
|
|
3400
|
-
VAR16:=HHV(HIGH,34);\n\
|
|
3401
|
-
VAR17:=EMA((VAR11-VAR13)/(VAR16-VAR13)*100,8);\n\
|
|
3402
|
-
VAR18:=EMA(VAR17,5);\n\
|
|
3403
|
-
BUY:=STICKLINE(VAR17-VAR18>0,VAR17,VAR18,8,1),COLORRED;\n\
|
|
3404
|
-
SELL:=STICKLINE(VAR17-VAR18<0,VAR17,VAR18,8,1),COLORGREEN;\n\
|
|
3405
|
-
BUY1:=VAR17>VAR18 AND REF(VAR17,1)<REF(VAR18,1);\n\
|
|
3406
|
-
SELL1:=VAR17<VAR18 AND REF(VAR17,1)>REF(VAR18,1);\n\
|
|
3407
|
-
\n\
|
|
3408
|
-
短高H:=(20*H+19*REF(H,1)+18*REF(H,2)+17*REF(H,3)+16*REF(H,4)+15*REF(H,5)+14*REF(H,6)\n\
|
|
3409
|
-
+13*REF(H,7)+12*REF(H,8)+11*REF(H,9)+10*REF(H,10)+9*REF(H,11)+8*REF(H,12)\n\
|
|
3410
|
-
+7*REF(H,13)+6*REF(H,14)+5*REF(H,15)+4*REF(H,16)+3*REF(H,17)+2*REF(H,18)+\n\
|
|
3411
|
-
REF(H,20))/210,COLORBLUE,LINETHICK1;\n\
|
|
3412
|
-
短低L:=(20*L+19*REF(L,1)+18*REF(L,2)+17*REF(L,3)+16*REF(L,4)+15*REF(L,5)+14*REF(L,6)\n\
|
|
3413
|
-
+13*REF(L,7)+12*REF(L,8)+11*REF(L,9)+10*REF(L,10)+9*REF(L,11)+8*REF(L,12)\n\
|
|
3414
|
-
+7*REF(L,13)+6*REF(L,14)+5*REF(L,15)+4*REF(L,16)+3*REF(L,17)+2*REF(L,18)+\n\
|
|
3415
|
-
REF(L,20))/210,COLORBLUE,LINETHICK1;\n\
|
|
3416
|
-
D90H:=EMA(短高H,90),COLORRED,LINETHICK1;\n\
|
|
3417
|
-
D90L:=EMA(短低L,90),COLORRED,LINETHICK1;\n\
|
|
3418
|
-
D90差:=D90H-D90L;\n\
|
|
3419
|
-
D90顶:=D90H+D90差*2,COLORRED,LINETHICK1;\n\
|
|
3420
|
-
D90底:=D90L-D90差*2,COLORRED,LINETHICK1;\n\
|
|
3421
|
-
高0:=(EMA(EMA(H,25),25)-EMA(EMA(L,25),25))*1+EMA(EMA(H,25),25),LINETHICK1,COLORWHITE;\n\
|
|
3422
|
-
低0:=EMA(EMA(L,25),25)-(EMA(EMA(H,25),25)-EMA(EMA(L,25),25))*1,LINETHICK1,COLORWHITE;\n\
|
|
3423
|
-
多头定位:=低0>=D90底 AND 高0>=D90顶;\n\
|
|
3424
|
-
空头定位:=高0<=D90顶 AND 低0<=D90底;\n\
|
|
3425
|
-
震荡定位:=低0>=D90底 AND 高0<=D90顶;\n\
|
|
3426
|
-
\n\
|
|
3427
|
-
牛市:=多头定位==1;\n\
|
|
3428
|
-
熊市:=空头定位==1;\n\
|
|
3429
|
-
震荡:=震荡定位==1;\n\
|
|
3430
|
-
\n\
|
|
3431
|
-
非牛市:=熊市 OR 震荡;\n\
|
|
3432
|
-
非熊市:=牛市 OR 震荡;\n\
|
|
3433
|
-
\n\
|
|
3434
|
-
BUY11:=BUY1 AND 非熊市;\n\
|
|
3435
|
-
SELL11:=SELL1 AND 震荡定位==0;\n\
|
|
3436
|
-
\n\
|
|
3437
|
-
BUY111:=BUY11 AND COUNT(BUY11,10)<2;\n\
|
|
3438
|
-
BUY0:=BUY111 AND COUNT(BUY111,21)==1;\n\
|
|
3439
|
-
SELL111:=SELL11 AND COUNT(SELL11,10)<2;\n\
|
|
3440
|
-
SELL0:=SELL111 AND COUNT(SELL111,10)==1;\n\
|
|
3441
|
-
\n\
|
|
3442
|
-
XK1:=EMA(100*(CLOSE-LLV(LOW,34))/(HHV(HIGH,34)-LLV(LOW,34)),3)/4;\n\
|
|
3443
|
-
上穿:=REF(XK1,1)<5 AND XK1>=5;\n\
|
|
3444
|
-
BUY4:=上穿 AND COUNT(XK1<2,12)<1;\n\
|
|
3445
|
-
\n\
|
|
3446
|
-
SELL2:=REF(XK1,1)<=22.5 AND XK1>22.5 AND COUNT(REF(XK1,1)>=22.5 AND XK1<22.5,5)>0;\n\
|
|
3447
|
-
SELL3:=REF(XK1,1)>=21.5 AND XK1<21.5 AND COUNT(REF(XK1,1)>=22.5 AND XK1<22.5,12)>1;\n\
|
|
3448
|
-
SELL4:=SELL2 OR SELL3 AND COUNT((SELL2 OR SELL3)==1,5)==1;\n\
|
|
3449
|
-
\n\
|
|
3450
|
-
SUPERDRAWTEXT(BUY0,L,"机会",2,10),COLORRED;\n\
|
|
3451
|
-
SUPERDRAWTEXT(SELL0,H,"风险",1,10),COLORGREEN;\n\
|
|
3452
|
-
SUPERDRAWTEXT(BUY2,L,"机会",2,10),COLORRED;\n\
|
|
3453
|
-
SUPERDRAWTEXT(BUY4,L,"机会",2,10),COLORRED;\n\
|
|
3454
|
-
SUPERDRAWTEXT(SELL4,H,"风险",1,10),COLORGREEN;'
|
|
3455
|
-
};
|
|
3456
|
-
|
|
3457
|
-
return data;
|
|
3458
|
-
}
|
|
3459
|
-
|
|
3460
|
-
JSIndexScript.prototype.Zealink_Index4 = function ()
|
|
3461
|
-
{
|
|
3462
|
-
let data =
|
|
3463
|
-
{
|
|
3464
|
-
Name: '股东实际增减持', Description: '股东实际增减持', IsMainIndex: false, FloatPrecision:0,
|
|
3465
|
-
Args: [],
|
|
3466
|
-
Script: //脚本
|
|
3467
|
-
'增持:NEWS(4),NODRAW,COLORRED;\n\
|
|
3468
|
-
减持:NEWS(5),NODRAW,COLORGREEN;\n\
|
|
3469
|
-
STICKLINE(增持>0,0,增持,1,0),COLORRED;\n\
|
|
3470
|
-
STICKLINE(减持<0,0,减持,1,0),COLORGREEN;'
|
|
3471
|
-
};
|
|
3472
|
-
|
|
3473
|
-
return data;
|
|
3474
|
-
}
|
|
3475
|
-
|
|
3476
|
-
JSIndexScript.prototype.Zealink_Index5 = function ()
|
|
3477
|
-
{
|
|
3478
|
-
let data =
|
|
3479
|
-
{
|
|
3480
|
-
Name: '大宗交易', Description: '大宗交易', IsMainIndex: false, FloatPrecision: 0,
|
|
3481
|
-
Args: [],
|
|
3482
|
-
Script: //脚本
|
|
3483
|
-
'交易次数:NEWS(7);'
|
|
3484
|
-
};
|
|
3485
|
-
|
|
3486
|
-
return data;
|
|
3487
|
-
}
|
|
3488
|
-
|
|
3489
|
-
JSIndexScript.prototype.Zealink_Index6 = function ()
|
|
3490
|
-
{
|
|
3491
|
-
let data =
|
|
3492
|
-
{
|
|
3493
|
-
Name: '信托持股', Description: '信托持股', IsMainIndex: false, FloatPrecision: 0,
|
|
3494
|
-
Args: [],
|
|
3495
|
-
Script: //脚本
|
|
3496
|
-
'家数:NEWS(6);'
|
|
3497
|
-
};
|
|
3498
|
-
|
|
3499
|
-
return data;
|
|
3500
|
-
}
|
|
3501
|
-
|
|
3502
|
-
JSIndexScript.prototype.Zealink_Index7 = function ()
|
|
3503
|
-
{
|
|
3504
|
-
let data =
|
|
3505
|
-
{
|
|
3506
|
-
Name: '官网新闻', Description: '官网新闻', IsMainIndex: false, FloatPrecision: 0,
|
|
3507
|
-
Args: [],
|
|
3508
|
-
Script: //脚本
|
|
3509
|
-
'个数:NEWS(8);'
|
|
3510
|
-
};
|
|
3511
|
-
|
|
3512
|
-
return data;
|
|
3513
|
-
}
|
|
3514
|
-
|
|
3515
|
-
JSIndexScript.prototype.Zealink_Index8 = function ()
|
|
3516
|
-
{
|
|
3517
|
-
let data =
|
|
3518
|
-
{
|
|
3519
|
-
Name: '高管要闻', Description: '高管要闻', IsMainIndex: false, FloatPrecision: 0,
|
|
3520
|
-
Args: [],
|
|
3521
|
-
Script: //脚本
|
|
3522
|
-
'个数:NEWS(9);'
|
|
3523
|
-
};
|
|
3524
|
-
|
|
3525
|
-
return data;
|
|
3526
|
-
}
|
|
3527
|
-
|
|
3528
|
-
JSIndexScript.prototype.Zealink_Index9 = function ()
|
|
3529
|
-
{
|
|
3530
|
-
let data =
|
|
3531
|
-
{
|
|
3532
|
-
Name: '股权质押', Description: '股权质押', IsMainIndex: false, FloatPrecision: 0,
|
|
3533
|
-
Args: [],
|
|
3534
|
-
Script: //脚本
|
|
3535
|
-
'次数:NEWS(10);'
|
|
3536
|
-
};
|
|
3537
|
-
|
|
3538
|
-
return data;
|
|
3539
|
-
}
|
|
3540
|
-
|
|
3541
|
-
JSIndexScript.prototype.Zealink_Index10 = function ()
|
|
3542
|
-
{
|
|
3543
|
-
let data =
|
|
3544
|
-
{
|
|
3545
|
-
Name: '操盘BS点', Description: '操盘BS点', IsMainIndex: true, FloatPrecision: 0,
|
|
3546
|
-
Args: [],
|
|
3547
|
-
Script: //脚本
|
|
3548
|
-
"JJ:=(CLOSE+HIGH+LOW)/3; \n\
|
|
3549
|
-
A:=EMA(JJ,10); \n\
|
|
3550
|
-
B:=REF(A,1);\n\
|
|
3551
|
-
M1:=EMA(CLOSE,3);\n\
|
|
3552
|
-
M2:=EMA(CLOSE,8); \n\
|
|
3553
|
-
M3:=EMA(M2,13); \n\
|
|
3554
|
-
M4:=EMA(M2,55); \n\
|
|
3555
|
-
B1:=A>B AND REF(A,1)<REF(B,1);\n\
|
|
3556
|
-
S1:=A<B AND REF(A,1)>REF(B,1);\n\
|
|
3557
|
-
INDEXCLOSE:INDEXC,EXDATA;\n\
|
|
3558
|
-
INDEXOPEN:INDEXO,EXDATA;\n\
|
|
3559
|
-
DRAWICON(REF(B1,1),L*0.97,13);\n\
|
|
3560
|
-
DRAWICON(REF(S1,1),H*1.03,14);"
|
|
3561
|
-
};
|
|
3562
|
-
|
|
3563
|
-
return data;
|
|
3564
|
-
}
|
|
3565
|
-
|
|
3566
|
-
JSIndexScript.prototype.Zealink_Index11 = function ()
|
|
3567
|
-
{
|
|
3568
|
-
let data =
|
|
3569
|
-
{
|
|
3570
|
-
Name: '操盘BS点', Description: '操盘BS点', IsMainIndex: true, FloatPrecision: 0,
|
|
3571
|
-
Args: [],
|
|
3572
|
-
Script: //脚本
|
|
3573
|
-
"JJ:=(CLOSE+HIGH+LOW)/3;\n\
|
|
3574
|
-
A:=EMA(JJ,10);\n\
|
|
3575
|
-
B:=REF(A,1);\n\
|
|
3576
|
-
M1:=EMA(CLOSE,3);\n\
|
|
3577
|
-
M2:=EMA(CLOSE,8); \n\
|
|
3578
|
-
M3:=EMA(M2,13);\n\
|
|
3579
|
-
M4:=EMA(M2,55);\n\
|
|
3580
|
-
持股区域:=STICKLINE(A>B,A,B,2,0),COLORYELLOW; \n\
|
|
3581
|
-
持币区域:=STICKLINE(A<B,A,B,2,0),COLORBLUE;\n\
|
|
3582
|
-
\n\
|
|
3583
|
-
VR1:=(C+O+REF(C,1))/3;\n\
|
|
3584
|
-
VR3:=HHV(VR1,21);\n\
|
|
3585
|
-
VR4:=LLV(VR1,21);\n\
|
|
3586
|
-
VR5:=(2*VR1-VR4-REF(VR4,1))/(VR3-VR4);\n\
|
|
3587
|
-
VR6:=(VR1-VR4)/(VR3-VR4);\n\
|
|
3588
|
-
VR7:=IF(VR1<=VR4,VR5*60,VR6*60);\n\
|
|
3589
|
-
VR8:=600*(EMA(C,3)-EMA(L,30))/EMA(L,30);\n\
|
|
3590
|
-
VR9:=EMA(VR8,7);\n\
|
|
3591
|
-
VRA:=(WINNER(120*C/100)-WINNER(100*C/100))*100;\n\
|
|
3592
|
-
VRB:=(-100)*(WINNER(120*C/100)-WINNER(100*C/100))+5;\n\
|
|
3593
|
-
VRC:=HHV(H,9)-LLV(L,9);\n\
|
|
3594
|
-
VRD:=HHV(H,9)-C;\n\
|
|
3595
|
-
VRE:=C-LLV(L,9);\n\
|
|
3596
|
-
VRF:=VRD/VRC*100-70;\n\
|
|
3597
|
-
VR10:=(C-LLV(L,60))/(HHV(H,60)-LLV(L,60))*100;\n\
|
|
3598
|
-
VR11:=(2*C+H+L)/4;\n\
|
|
3599
|
-
VR12:=SMA(VRE/VRC*100,3,1);\n\
|
|
3600
|
-
VR13:=LLV(L,34);\n\
|
|
3601
|
-
VR14:=SMA(VR12,3,1)-SMA(VRF,9,1);\n\
|
|
3602
|
-
VR15:=IF(VR14>100,VR14-100,0);\n\
|
|
3603
|
-
VR16:=HHV(H,34);\n\
|
|
3604
|
-
VR17:=EMA((VR11-VR13)/(VR16-VR13)*100,8);\n\
|
|
3605
|
-
VR18:=EMA(VR17,5);\n\
|
|
3606
|
-
\n\
|
|
3607
|
-
B1:=A>B AND REF(A,1)<REF(B,1);\n\
|
|
3608
|
-
S1:=A<B AND REF(A,1)>REF(B,1);\n\
|
|
3609
|
-
\n\
|
|
3610
|
-
B9:=BARSLAST(REF(B1,1) AND (REF(VR17>VR18,1) OR MIN(VR17,VR18)>REF(MAX(VR17,VR18),1)));\n\
|
|
3611
|
-
S9:=BARSLAST(REF(S1,1) AND (REF(VR17<VR18,1) OR MAX(VR17,VR18)<REF(MIN(VR17,VR18),1)));\n\
|
|
3612
|
-
\n\
|
|
3613
|
-
DRAWICON(REF(B1,1) AND (REF(VR17>VR18,1) OR MIN(VR17,VR18)>REF(MAX(VR17,VR18),1)) AND REF(B9,2)>=S9,L*0.97,13);\n\
|
|
3614
|
-
DRAWICON(REF(S1,1) AND (REF(VR17<VR18,1) OR MAX(VR17,VR18)<REF(MIN(VR17,VR18),1)) AND REF(S9,1)>=B9,H*1.03,14);\n\
|
|
3615
|
-
\n\
|
|
3616
|
-
DRAWKLINE_IF(VR17>VR18,HIGH,CLOSE,LOW,OPEN),COLORRED;\n\
|
|
3617
|
-
DRAWKLINE_IF(VR17<VR18,HIGH,CLOSE,LOW,OPEN),COLORBLUE;\n\
|
|
3618
|
-
\n\
|
|
3619
|
-
INDEXCLOSE:INDEXC,EXDATA; //取指数的收盘价 回测的时候计算BATE系数用 "
|
|
3620
|
-
};
|
|
3621
|
-
|
|
3622
|
-
return data;
|
|
3623
|
-
}
|
|
3624
|
-
|
|
3625
|
-
|
|
3626
3271
|
JSIndexScript.prototype.HeikinAshi=function()
|
|
3627
3272
|
{
|
|
3628
3273
|
let data =
|
|
@@ -4165,6 +3810,58 @@ ADX:SMA(ABS(MDI-PDI)/(MDI+PDI)*100,N,1),COLORYELLOW,LINETHICK2;
|
|
|
4165
3810
|
}
|
|
4166
3811
|
|
|
4167
3812
|
|
|
3813
|
+
JSIndexScript.prototype.ZNZ_CBAND = function()
|
|
3814
|
+
{
|
|
3815
|
+
let data =
|
|
3816
|
+
{
|
|
3817
|
+
Name: 'ZNZ_CBAND', Description: '优化成本布林带宽', IsMainIndex: false,
|
|
3818
|
+
Args: [{ Name: 'N', Value: 20 }],
|
|
3819
|
+
Script: //脚本
|
|
3820
|
+
`A:=AMOUNT/(100*VOL);
|
|
3821
|
+
BBI1:=MA(A,N);
|
|
3822
|
+
UPR0:=BBI1+STD(A,N);
|
|
3823
|
+
DWN0:=BBI1-STD(A,N);
|
|
3824
|
+
UPR1:=BBI1+1.7*STD(A,N);
|
|
3825
|
+
DWN1:=BBI1-1.7*STD(A,N);
|
|
3826
|
+
优化成本布林带宽:100*1.7*STD(A,N);`
|
|
3827
|
+
};
|
|
3828
|
+
|
|
3829
|
+
return data;
|
|
3830
|
+
}
|
|
3831
|
+
|
|
3832
|
+
JSIndexScript.prototype.ZNZ_RPY2 = function()
|
|
3833
|
+
{
|
|
3834
|
+
let data =
|
|
3835
|
+
{
|
|
3836
|
+
Name: 'ZNZ_RPY2', Description: '两年相对价位', IsMainIndex: false,
|
|
3837
|
+
Script: //脚本
|
|
3838
|
+
`A:=REF(HHV(CLOSE,480),1);
|
|
3839
|
+
B:=REF(LLV(CLOSE,480),1);
|
|
3840
|
+
100*(CLOSE-B)/(A-B);`
|
|
3841
|
+
};
|
|
3842
|
+
|
|
3843
|
+
return data;
|
|
3844
|
+
}
|
|
3845
|
+
|
|
3846
|
+
JSIndexScript.prototype.ZNZ_RPY1 = function()
|
|
3847
|
+
{
|
|
3848
|
+
let data =
|
|
3849
|
+
{
|
|
3850
|
+
Name: 'ZNZ_RPY1', Description: '年相对价位', IsMainIndex: false,
|
|
3851
|
+
Args: [{ Name: 'N', Value: 240 }],
|
|
3852
|
+
Script: //脚本
|
|
3853
|
+
`A:=REF(HHV(CLOSE,N),1);
|
|
3854
|
+
B:=REF(LLV(CLOSE,N),1);
|
|
3855
|
+
100*(CLOSE-B)/(A-B);`
|
|
3856
|
+
};
|
|
3857
|
+
|
|
3858
|
+
return data;
|
|
3859
|
+
}
|
|
3860
|
+
|
|
3861
|
+
|
|
3862
|
+
|
|
3863
|
+
|
|
3864
|
+
|
|
4168
3865
|
JSIndexScript.prototype.TEST = function ()
|
|
4169
3866
|
{
|
|
4170
3867
|
let data =
|
package/src/jscommon/umychart.js
CHANGED
|
@@ -2728,6 +2728,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
2728
2728
|
this.Tooltip.id=Guid();
|
|
2729
2729
|
uielement.parentNode.appendChild(this.Tooltip);
|
|
2730
2730
|
this.IsShowTooltip=true; //是否显示K线tooltip
|
|
2731
|
+
this.TooltipCache={ Type:null, IsShow:false, X:null, Y:null, Data:null, InnerHTML:null }; //缓存tooltip数据
|
|
2731
2732
|
|
|
2732
2733
|
//区间选择
|
|
2733
2734
|
this.SelectRect=document.createElement("div");
|
|
@@ -6483,6 +6484,12 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
6483
6484
|
|
|
6484
6485
|
var pixelTatio = GetDevicePixelRatio(); //获取设备的分辨率
|
|
6485
6486
|
var xMove=15/pixelTatio; //顶部坐标偏移位置
|
|
6487
|
+
|
|
6488
|
+
this.TooltipCache.Type=toolTip.Type;
|
|
6489
|
+
this.TooltipCache.Data=null;
|
|
6490
|
+
this.TooltipCache.X=x;
|
|
6491
|
+
this.TooltipCache.Y=y;
|
|
6492
|
+
|
|
6486
6493
|
if (toolTip.Type===0) //K线信息
|
|
6487
6494
|
{
|
|
6488
6495
|
var scrollPos=GetScrollPosition();
|
|
@@ -6517,6 +6524,10 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
6517
6524
|
this.Tooltip.className='jschart-tooltip';
|
|
6518
6525
|
this.Tooltip.innerHTML=format.Text;
|
|
6519
6526
|
this.Tooltip.style.display = "block";
|
|
6527
|
+
|
|
6528
|
+
this.TooltipCache.IsShow=true;
|
|
6529
|
+
this.TooltipCache.Data={ Date:toolTip.Data.Date, Time:toolTip.Data.Time };
|
|
6530
|
+
this.TooltipCache.InnerHTML=format.Text;
|
|
6520
6531
|
}
|
|
6521
6532
|
else if (toolTip.Type===1) //信息地雷提示信息
|
|
6522
6533
|
{
|
|
@@ -6671,13 +6682,44 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
6671
6682
|
this.Tooltip.style.top = (top +xMove)+ "px";
|
|
6672
6683
|
this.Tooltip.style.width = width+"px";
|
|
6673
6684
|
this.Tooltip.style.height =null;
|
|
6674
|
-
this.Tooltip.innerHTML=format.Text
|
|
6685
|
+
this.Tooltip.innerHTML=format.Text;
|
|
6675
6686
|
this.Tooltip.style.display = "block";
|
|
6676
6687
|
}
|
|
6677
6688
|
}
|
|
6678
6689
|
|
|
6690
|
+
this.UpdateDOMTooltip=function(toolTipType, data)
|
|
6691
|
+
{
|
|
6692
|
+
if (!this.TooltipCache.IsShow) return ;
|
|
6693
|
+
if (this.TooltipCache.Type!=toolTipType) return;
|
|
6694
|
+
if (!this.TooltipCache.Data) return;
|
|
6695
|
+
|
|
6696
|
+
if (this.TooltipCache.Type===0)
|
|
6697
|
+
{
|
|
6698
|
+
if (!data || !IFrameSplitOperator.IsNonEmptyArray(data.Data)) return;
|
|
6699
|
+
var lastItem=data.Data[data.Data.length-1];
|
|
6700
|
+
if (lastItem.Date!=this.TooltipCache.Data.Date) return;
|
|
6701
|
+
if (IFrameSplitOperator.IsNumber(lastItem.Time) && lastItem.Time!=this.TooltipCache.Data.Time) return;
|
|
6702
|
+
var klinePaint=this.ChartPaint[0];
|
|
6703
|
+
|
|
6704
|
+
var format=g_DivTooltipDataForamt.Create('HistoryDataStringFormat');
|
|
6705
|
+
format.Value={ Data:lastItem, ChartPaint:klinePaint, Type:this.TooltipCache.Type };
|
|
6706
|
+
format.Symbol=this.Symbol;
|
|
6707
|
+
format.LanguageID=this.LanguageID;
|
|
6708
|
+
format.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
|
|
6709
|
+
if (!format.Operator()) return;
|
|
6710
|
+
if (format.Text==this.TooltipCache.InnerHTML) return;
|
|
6711
|
+
this.Tooltip.innerHTML=format.Text;
|
|
6712
|
+
this.TooltipCache.InnerHTML=format.Text;
|
|
6713
|
+
}
|
|
6714
|
+
}
|
|
6715
|
+
|
|
6679
6716
|
this.HideTooltip=function()
|
|
6680
6717
|
{
|
|
6718
|
+
this.TooltipCache.IsShow=false;
|
|
6719
|
+
this.TooltipCache.Type=null;
|
|
6720
|
+
this.TooltipCache.InnerHTML=null;
|
|
6721
|
+
this.TooltipCache.Data=null;
|
|
6722
|
+
|
|
6681
6723
|
if (this.Tooltip.style.display!="none") this.Tooltip.style.display = "none";
|
|
6682
6724
|
}
|
|
6683
6725
|
|
|
@@ -66870,6 +66912,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
|
|
|
66870
66912
|
this.Draw();
|
|
66871
66913
|
|
|
66872
66914
|
this.SendKLineUpdateEvent(bindData);
|
|
66915
|
+
this.UpdateDOMTooltip(0, bindData);
|
|
66873
66916
|
|
|
66874
66917
|
//叠加指标计算
|
|
66875
66918
|
this.BindAllOverlayIndexData(bindData, { CheckRunCount:true,SyncExecute:false }); //异步模式叠加指标
|
|
@@ -67120,6 +67163,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
|
|
|
67120
67163
|
this.Draw();
|
|
67121
67164
|
|
|
67122
67165
|
this.SendKLineUpdateEvent(bindData);
|
|
67166
|
+
this.UpdateDOMTooltip(0, bindData);
|
|
67123
67167
|
|
|
67124
67168
|
//更新叠加指标
|
|
67125
67169
|
this.BindAllOverlayIndexData(bindData, { CheckRunCount:true,SyncExecute:false }); //异步模式叠加指标
|