예스스탁
예스스탁 답변
2022-11-17 11:52:24
안녕하세요
예스스탁입니다.
1 지표
input : sensitivity(3),Periods(30);
var : source(0),avgv(0),pi(0);
var : highestHigh(0),lowestLow(0),R(0);
var : ema34(0),x1_ema34(0),x2_ema34(0),y1_ema34(0),y2_ema34(0);
var : c_ema34(0),emaAngle_1(0),emaAngle(0),chopZoneColor(0);
source = close;
avgv = (h+l+c)/3;
pi = atan(1) * 4;
highestHigh = highest(H,periods);
lowestLow = lowest(L,periods);
r = 25 / (highestHigh - lowestLow) * lowestLow;
ema34 = ema(source, 34);
x1_ema34 = 0;
x2_ema34 = 1;
y1_ema34 = 0;
y2_ema34 = (ema34[1] - ema34) / avgv * r;
c_ema34 = sqrt((x2_ema34 - x1_ema34)*(x2_ema34 - x1_ema34) + (y2_ema34 - y1_ema34)*(y2_ema34 - y1_ema34));
emaAngle_1 = round(180 * acos((x2_ema34 - x1_ema34)/c_ema34) / pi,0);
emaAngle = iff(y2_ema34 > 0, - emaAngle_1, emaAngle_1);
chopZoneColor = iff(emaAngle >= 5 , Turquoise ,
IFf(emaAngle < 5 and emaAngle >= 3.57 , DarkGreen ,
IFf(emaAngle < 3.57 and emaAngle >= 2.14 , Green ,
IFf(emaAngle < 2.14 and emaAngle >= .71 ,Lime ,
IFf(emaAngle <= -1 * 5 ,DarkRed ,
IFf(emaAngle > -1 * 5 and emaAngle <= -1 * 3.57 , Red ,
IFf(emaAngle > -1 * 3.57 and emaAngle <= -1 * 2.14 , Orange ,
IFf(emaAngle > -1 * 2.14 and emaAngle <= -1 * .71 , Gold ,Yellow))))))));
plot1(1,"1",chopZoneColor);
2 시스템
/*colorTurquoise = #34dddd
colorDarkGreen = #006400
colorPaleGreen = #98fb98
colorLime = lime
colorDarkRed = #8B0000
colorRed = red
colorOrange = orange
colorLightOrange = #ffc04c
colorYellow = yellow*/
input : sensitivity(3),Periods(30);
var : source(0),avgv(0),pi(0);
var : highestHigh(0),lowestLow(0),R(0);
var : ema34(0),x1_ema34(0),x2_ema34(0),y1_ema34(0),y2_ema34(0);
var : c_ema34(0),emaAngle_1(0),emaAngle(0),chopZoneColor(0);
var : boolclose(False),boolbuy(False),ii(0);
source = close;
avgv = (h+l+c)/3;
pi = atan(1) * 4;
highestHigh = highest(H,periods);
lowestLow = lowest(L,periods);
r = 25 / (highestHigh - lowestLow) * lowestLow;
ema34 = ema(source, 34);
x1_ema34 = 0;
x2_ema34 = 1;
y1_ema34 = 0;
y2_ema34 = (ema34[1] - ema34) / avgv * r;
c_ema34 = sqrt((x2_ema34 - x1_ema34)*(x2_ema34 - x1_ema34) + (y2_ema34 - y1_ema34)*(y2_ema34 - y1_ema34));
emaAngle_1 = round(180 * acos((x2_ema34 - x1_ema34)/c_ema34) / pi,0);
emaAngle = iff(y2_ema34 > 0, - emaAngle_1, emaAngle_1);
chopZoneColor = iff(emaAngle >= 5 , Turquoise ,
IFf(emaAngle < 5 and emaAngle >= 3.57 , DarkGreen ,
IFf(emaAngle < 3.57 and emaAngle >= 2.14 , Green ,
IFf(emaAngle < 2.14 and emaAngle >= .71 ,Lime ,
IFf(emaAngle <= -1 * 5 ,DarkRed ,
IFf(emaAngle > -1 * 5 and emaAngle <= -1 * 3.57 , Red ,
IFf(emaAngle > -1 * 3.57 and emaAngle <= -1 * 2.14 , Orange ,
IFf(emaAngle > -1 * 2.14 and emaAngle <= -1 * .71 , Gold ,Yellow))))))));
boolclose = (chopZoneColor!=Turquoise);
boolbuy = (chopZoneColor==Turquoise and chopZoneColor[sensitivity] != Turquoise);
for ii = 1 to sensitivity-1
{
if (chopZoneColor[ii] == Turquoise) Then
boolclose = false;
if (chopZoneColor[ii] != Turquoise) Then
boolbuy = false;
}
if boolbuy == true Then
Buy("buy");
if boolclose == true Then
ExitLong("bx");
즐거운 하루되세요
> 외국인 님이 쓴 글입니다.
> 제목 : 수정부탁드립니다
>
예스스탁 언어로 변경 부탁드립니다
//@version=3
strategy(title = "Chop Zone Strategy - Buy Only")
colorTurquoise = #34dddd
colorDarkGreen = #006400
colorPaleGreen = #98fb98
colorLime = lime
colorDarkRed = #8B0000
colorRed = red
colorOrange = orange
colorLightOrange = #ffc04c
colorYellow = yellow
source = close
avg = hlc3
pi = atan(1) * 4
periods = 30
highestHigh = highest(periods)
lowestLow = lowest(periods)
range = 25 / (highestHigh - lowestLow) * lowestLow
ema34 = ema(source, 34)
x1_ema34 = 0
x2_ema34 = 1
y1_ema34 = 0
y2_ema34 = (ema34[1] - ema34) / avg * range
c_ema34 = sqrt((x2_ema34 - x1_ema34)*(x2_ema34 - x1_ema34) + (y2_ema34 - y1_ema34)*(y2_ema34 - y1_ema34))
emaAngle_1 = round(180 * acos((x2_ema34 - x1_ema34)/c_ema34) / pi)
emaAngle = iff(y2_ema34 > 0, - emaAngle_1, emaAngle_1)
chopZoneColor = emaAngle >= 5 ? colorTurquoise : emaAngle < 5 and emaAngle >= 3.57 ? colorDarkGreen : emaAngle < 3.57 and emaAngle >= 2.14 ? colorPaleGreen : emaAngle < 2.14 and emaAngle >= .71 ? colorLime : emaAngle <= -1 * 5 ? colorDarkRed : emaAngle > -1 * 5 and emaAngle <= -1 * 3.57 ? colorRed : emaAngle > -1 * 3.57 and emaAngle <= -1 * 2.14 ? colorOrange : emaAngle > -1 * 2.14 and emaAngle <= -1 * .71 ? colorLightOrange : colorYellow
plot(1, color=chopZoneColor, style=columns)
sensitivity = input(title="Sensitivity", type=integer, defval=3, minval=1, maxval=100)
boolclose = (chopZoneColor!=colorTurquoise)
boolbuy = (chopZoneColor==colorTurquoise and chopZoneColor[sensitivity]!=colorTurquoise)
for i = 1 to sensitivity-1
if (chopZoneColor[i]==colorTurquoise)
boolclose := false
if (chopZoneColor[i]!=colorTurquoise)
boolbuy := false
strategy.entry("buy", strategy.long, when=boolbuy)
strategy.close("buy", when = boolclose)