커뮤니티
부탁합니다.
2012-04-17 19:21:08
324
글번호 50170
안녕하세요
수식지왕님의 보고 수정부탁드립니다.
삼각형이 그려지는데 에서 매수매도 가능할수있도록 부탁합니다.
고점표시에서 매도
저점표시에서매수
고점추세선이탈시 매수
저점추세선이탈시 매도
input:좌(5),우(5);
var:j(0),예비고(0),예비저(0),예비고bar(0),예비저bar(0),고점표시(0),저점표시(0),
고점추세선(0),저점추세선(0);
array:고[50](0),저[50](0),고bar[50](0),저bar[50](0);
#==============================================================================#
# 변곡점 계산
#==============================================================================#
if highest(h,좌)==h and iff(예비고bar<우,예비고<h,1) then
{
예비고=h;
예비고bar=0;
}
else
예비고bar=예비고bar+1;
if lowest(l,좌)==l and iff(예비저bar<우,예비저>l,1) then
{
예비저=l;
예비저bar=0;
}
else
예비저bar=예비저bar+1;
고점표시=(o[우]+c[우])/2;
저점표시=(o[우]+c[우])/2;
for j=1 to 49 begin
고bar[j]=고bar[j]+1;
저bar[j]=저bar[j]+1;
end;
if 예비고bar==우 then
{
if 저bar[1]>고bar[1] then
{
if 고[1]<예비고 then
{
고점표시=예비고*1.0005;
고[1]=예비고;
고bar[1]=예비고bar;
}
}
else
{
for j=49 downto 2 begin
고[j]=고[j-1];
고bar[j]=고bar[j-1];
end;
고점표시=예비고*1.0005;
고[1]=예비고;
고bar[1]=예비고bar;
}
}
if 예비저bar==우 then
{
if 고bar[1]>저bar[1] then
{
if 저[1]>예비저 then
{
저점표시=예비저*0.9995;
저[1]=예비저;
저bar[1]=예비저bar;
}
}
else
{
for j=49 downto 2 begin
저[j]=저[j-1];
저bar[j]=저bar[j-1];
end;
저점표시=예비저*0.9995;
저[1]=예비저;
저bar[1]=예비저bar;
}
}
#==============================================================================#
# 자동추세선 계산
#==============================================================================#
고점추세선 = 0;
for j = 2 to 49 begin
if 고[j] > 고[1] and 고점추세선 == 0 then
{
고점추세선=((고[1]-고[j])/(고bar[j]-고bar[1]))*고bar[j]+고[j];
}
end;
저점추세선 = 0;
for j = 2 to 49 begin
if 저[j] < 저[1] and 저점추세선 == 0 then
{
저점추세선=((저[1]-저[j])/(저bar[j]-저bar[1]))*저bar[j]+저[j];
}
end;
#==============================================================================#
# 지표출력
#==============================================================================#
if 고점표시 > h[우] then plot1(고점표시,"전고점",BLUE);
if 저점표시 < l[우] then plot2(저점표시,"전저점",RED);
if 고점추세선>0 then plot3(고점추세선,"고점추세선",BLUE);
if 저점추세선>0 then plot4(저점추세선,"저점추세선",RED);
답변 1
예스스탁 예스스탁 답변
2012-04-18 09:17:30
안녕하세요
예스스탁입니다.
올리신 지표의 고점이나 저점표시 자리에 신호를 발생할 방법이 없습니다.
해당 지표는 현재봉에서 그조건을 판단해 값을 계산한후 그 값을 N개봉이전에
이동시켜 점을 찍게하는 부분이 있습니다.
즉 조건은 현재봉에서 판단하고 신호는 5개봉전에 발생시킨다고 하는 내용과 같습니다.
신호는 항상 현재봉에서 발생하므로 해당 지표의 속성화면의 수평이동란을 모두 0으로
아래 신호와 함께 보셔야 합니다.
input:좌(5),우(5);
var:j(0),예비고(0),예비저(0),예비고bar(0),예비저bar(0),고점표시(0),저점표시(0),
고점추세선(0),저점추세선(0);
array:고[50](0),저[50](0),고bar[50](0),저bar[50](0);
#==============================================================================#
# 변곡점 계산
#==============================================================================#
if highest(h,좌)==h and iff(예비고bar<우,예비고<h,1) then
{
예비고=h;
예비고bar=0;
}
else
예비고bar=예비고bar+1;
if lowest(l,좌)==l and iff(예비저bar<우,예비저>l,1) then
{
예비저=l;
예비저bar=0;
}
else
예비저bar=예비저bar+1;
고점표시=(o[우]+c[우])/2;
저점표시=(o[우]+c[우])/2;
for j=1 to 49 begin
고bar[j]=고bar[j]+1;
저bar[j]=저bar[j]+1;
end;
if 예비고bar==우 then
{
if 저bar[1]>고bar[1] then
{
if 고[1]<예비고 then
{
고점표시=예비고*1.0005;
고[1]=예비고;
고bar[1]=예비고bar;
}
}
else
{
for j=49 downto 2 begin
고[j]=고[j-1];
고bar[j]=고bar[j-1];
end;
고점표시=예비고*1.0005;
고[1]=예비고;
고bar[1]=예비고bar;
}
}
if 예비저bar==우 then
{
if 고bar[1]>저bar[1] then
{
if 저[1]>예비저 then
{
저점표시=예비저*0.9995;
저[1]=예비저;
저bar[1]=예비저bar;
}
}
else
{
for j=49 downto 2 begin
저[j]=저[j-1];
저bar[j]=저bar[j-1];
end;
저점표시=예비저*0.9995;
저[1]=예비저;
저bar[1]=예비저bar;
}
}
#==============================================================================#
# 자동추세선 계산
#==============================================================================#
고점추세선 = 0;
for j = 2 to 49 begin
if 고[j] > 고[1] and 고점추세선 == 0 then
{
고점추세선=((고[1]-고[j])/(고bar[j]-고bar[1]))*고bar[j]+고[j];
}
end;
저점추세선 = 0;
for j = 2 to 49 begin
if 저[j] < 저[1] and 저점추세선 == 0 then
{
저점추세선=((저[1]-저[j])/(저bar[j]-저bar[1]))*저bar[j]+저[j];
}
end;
if 고점표시 > h[우] and 고점표시 > 0 then
sell();
if 저점표시 < l[우] and 고점표시 > 0 then
buy();
if 고점추세선>0 and CrossDown(c,고점추세선) then
buy();
if 저점추세선>0 and crossup(c,저점추세선) then
sell();
즐거운 하루되세요
> 외국인 님이 쓴 글입니다.
> 제목 : 부탁합니다.
> 안녕하세요
수식지왕님의 보고 수정부탁드립니다.
삼각형이 그려지는데 에서 매수매도 가능할수있도록 부탁합니다.
고점표시에서 매도
저점표시에서매수
고점추세선이탈시 매수
저점추세선이탈시 매도
input:좌(5),우(5);
var:j(0),예비고(0),예비저(0),예비고bar(0),예비저bar(0),고점표시(0),저점표시(0),
고점추세선(0),저점추세선(0);
array:고[50](0),저[50](0),고bar[50](0),저bar[50](0);
#==============================================================================#
# 변곡점 계산
#==============================================================================#
if highest(h,좌)==h and iff(예비고bar<우,예비고<h,1) then
{
예비고=h;
예비고bar=0;
}
else
예비고bar=예비고bar+1;
if lowest(l,좌)==l and iff(예비저bar<우,예비저>l,1) then
{
예비저=l;
예비저bar=0;
}
else
예비저bar=예비저bar+1;
고점표시=(o[우]+c[우])/2;
저점표시=(o[우]+c[우])/2;
for j=1 to 49 begin
고bar[j]=고bar[j]+1;
저bar[j]=저bar[j]+1;
end;
if 예비고bar==우 then
{
if 저bar[1]>고bar[1] then
{
if 고[1]<예비고 then
{
고점표시=예비고*1.0005;
고[1]=예비고;
고bar[1]=예비고bar;
}
}
else
{
for j=49 downto 2 begin
고[j]=고[j-1];
고bar[j]=고bar[j-1];
end;
고점표시=예비고*1.0005;
고[1]=예비고;
고bar[1]=예비고bar;
}
}
if 예비저bar==우 then
{
if 고bar[1]>저bar[1] then
{
if 저[1]>예비저 then
{
저점표시=예비저*0.9995;
저[1]=예비저;
저bar[1]=예비저bar;
}
}
else
{
for j=49 downto 2 begin
저[j]=저[j-1];
저bar[j]=저bar[j-1];
end;
저점표시=예비저*0.9995;
저[1]=예비저;
저bar[1]=예비저bar;
}
}
#==============================================================================#
# 자동추세선 계산
#==============================================================================#
고점추세선 = 0;
for j = 2 to 49 begin
if 고[j] > 고[1] and 고점추세선 == 0 then
{
고점추세선=((고[1]-고[j])/(고bar[j]-고bar[1]))*고bar[j]+고[j];
}
end;
저점추세선 = 0;
for j = 2 to 49 begin
if 저[j] < 저[1] and 저점추세선 == 0 then
{
저점추세선=((저[1]-저[j])/(저bar[j]-저bar[1]))*저bar[j]+저[j];
}
end;
#==============================================================================#
# 지표출력
#==============================================================================#
if 고점표시 > h[우] then plot1(고점표시,"전고점",BLUE);
if 저점표시 < l[우] then plot2(저점표시,"전저점",RED);
if 고점추세선>0 then plot3(고점추세선,"고점추세선",BLUE);
if 저점추세선>0 then plot4(저점추세선,"저점추세선",RED);
이전글