예스스탁
예스스탁 답변
2021-01-05 16:58:31
안녕하세요
예스스탁입니다.
input : MAPeriod(80),SamplePeriod(5),AngleThreshold(45);
var : mav(0),MAAngle(0),AverageAngle(0),AverageAngle2(0),AverageAngleD(0),AverageAngle2D(0);
var : R(0),G(0),B(0);
MAv = ma(c,MAPeriod);
MAAngle = (sin(atan((MAv-MAv[1])/MAv[1]*100)))*1000;
AverageAngle = ma(MAAngle,SamplePeriod);
AverageAngle2 = ma(MAAngle,round(SamplePeriod/2,0));
If AverageAngle > AngleThreshold Then
{
R = 0;
G = 255;
B = 0;
}
Else If AverageAngle < (AngleThreshold*-1) Then
{
R = 255;
G = 0;
B = 0;
}
Else
{
R = 0;
G = 0;
B = 255;
}
AverageAngleD = abs(AverageAngle);
AverageAngle2D = abs(AverageAngle2);
Plot1(AverageAngleD,"AverageAngle",RGB(R,G,B));
Plot2(AverageAngle2D,"AverageAngle2",RGB(R,G,B));
즐거운 하루되세요
> 로즈버드 님이 쓴 글입니다.
> 제목 : 문의드립니다.
> 안녕하세요
아래의 수식을 예스랭귀지로 변환 문의드리려고 합니다.
항상 감사드립니다!!
//MAPeriod = 80
//SamplePeriod = 5
//AngleThreshold = 45
MA = average[MAPeriod](close)
MAAngle = (sin(atan((MA-MA[1])/MA[1]*100)))*1000//R2[MAPeriod](close)*100
AverageAngle = Average[SamplePeriod](MAAngle)
AverageAngle2 = Average[round(SamplePeriod/2)](MAAngle)
If AverageAngle > AngleThreshold Then
R = 0
G = 255
B = 0
ElsIf AverageAngle < (AngleThreshold*-1) Then
R = 255
G = 0
B = 0
Else
R = 0
G = 0
B = 255
EndIf
AverageAngleD = abs(AverageAngle)
AverageAngle2D = abs(AverageAngle2)
Return AverageAngleD coloured(R,G,B) style(Line,2) as "AverageAngle", AverageAngle2D as "AverageAngle2", AngleThreshold