커뮤니티
5786번 추세선 문의에 대한 답변
2007-03-14 12:51:17
1571
글번호 12121
질문자의 의도에 맞는지 모르겠지만 비슷하게 나오도록 해보았습니다.
/* 작성자 : 수식지왕 */
Input:n(4), af(0.02), maxAF(0.2);
Var:j(0),k(0),x(0),z(0),value(0),SarUpC(0),SarDnC(0),SarUpBar(0),SarDnBar(0),SarUpVal(0),SarDnVal(0),
추세선(0),지지선(0),저항선(0);
Array:고[10](0),저[10](0),고Bar[10](0),저Bar[10](0);
value = Sar(af,maxAF);
for j = 1 to 9 {
저Bar[j] = 저Bar[j] + 1;
고Bar[j] = 고Bar[j] + 1;
}
SarUpBar = SarUpBar + 1;
SarDnBar = SarDnBar + 1;
if Highest(H,n)[n+1] <= H[n] and H[n] > Highest(H,n) then {
for j = 8 downto 1 {
고[j+1] = 고[j];
고Bar[j+1] = 고Bar[j];
}
고[1] = H[n];
고Bar[1] = n;
if 저Bar[1] > 고Bar[2] then {
for j = 8 downto 1 {
저[j+1] = 저[j];
저Bar[j+1] = 저Bar[j];
}
k = n + 1;
for j = n + 2 to 고Bar[2]-1 {
if L[k] > L[j] then k = j;
}
저[1] = L[k];
저Bar[1] = k;
}
}
if Lowest(L,n)[n+1] >= L[n] and L[n] < Lowest(L,n) then {
for j = 8 downto 1 {
저[j+1] = 저[j];
저Bar[j+1] = 저Bar[j];
}
저[1] = L[n];
저Bar[1] = n;
if 고Bar[1] > 저Bar[2] then {
for j = 8 downto 1 {
고[j+1] = 고[j];
고Bar[j+1] = 고Bar[j];
}
k = n + 1;
for j = n + 2 to 저Bar[2]-1 {
if H[k] < H[j] then k = j;
}
고[1] = H[k];
고Bar[1] = k;
}
}
if CrossUp(C,value) then {
SarUpC = C;
SarUpVal = (value[1] + value)/2;
SarUpBar = 0;
}
if CrossDown(C,value) then {
SarDnC = C;
SarDnVal = (value[1] + value)/2;
SarDnBar = 0;
}
추세선 = 0; 지지선 = 0; 저항선 = 0;
if C > value then {
for j = 9 downto 1 {
if SarUpBar <= 저Bar[j] then x = j;
if SarUpBar <= 고Bar[j] then z = j;
}
추세선 = (SarUpC - 저[x])/(저Bar[x] - SarUpBar) * 저Bar[x] + 저[x];
지지선 = (SarUpVal - 저[x])/(저Bar[x] - SarUpBar) * 저Bar[x] + 저[x];
저항선 = (SarUpVal - 저[x])/(저Bar[x] - SarUpBar) * 고Bar[z] + 고[z];
}
if C < value then {
for j = 9 downto 1 {
if SarDnBar <= 저Bar[j] then x = j;
if SarDnBar <= 고Bar[j] then z = j;
}
추세선 = (SarDnC - 고[z])/(고Bar[z] - SarDnBar) * 고Bar[z] + 고[z];
지지선 = (SarDnVal - 고[z])/(고Bar[z] - SarDnBar) * 고Bar[z] + 고[z];
저항선 = (SarDnVal - 고[z])/(고Bar[z] - SarDnBar) * 저Bar[x] + 저[x];
}
if 추세선 > 0 then {
plot1(추세선,"추세선",Green);
plot2(지지선,"지지선",Red);
plot3(저항선,"저항선",Blue);
}
==========================================================================
자동추세선, 파라볼릭 2개 쓰고 있는데요..
이 둘을 이용해서 새로운 추세선 3개를 만들고 싶습니다.
1. 추세선: 파라볼릭돌파시, 스윙차트상 고/저점과 파라볼릭 돌파한 봉의(c)연결
2. 지지선 : 파라볼릭돌파시, 스윙차트상 고/저점과 (파라볼릭끝 + 파라볼릭시작)/2 연결
3. 저항선 : 스윙차트상 고/저점과 중심선을 수평이동한선
이 3가지인데요..추세선이 상하방일때를 구분하고 싶어서요..
1. 추세선(녹색선): 파라볼릭돌파시, swinglow에서 찾은 봉으로 파라볼릭 돌파한 봉의(c)연결
2. 지지선1(빨간선) : 파라볼릭돌파시, swinglow에서 찾은 봉으로 (파라볼릭끝 + 파라볼릭시작)/2 연결
3. 저항선1(파란색) : swinghigh에서 찾은 봉으로 지지선을 수평이동한선
그리고..
1. 추세선(녹색선): 파라볼릭돌파시, swinghigh에서 찾은 봉으로 파라볼릭 돌파한 봉의(c)연결
2. 지지선2(빨간선) : 파라볼릭돌파시, swinghigh에서 찾은 봉으로 (파라볼릭끝 + 파라볼릭시작)/2 연결
3. 저항선2(파란색) : swinglow에서 찾은 봉으로 중심선을 수평이동한선
그림을 대충 그려봤는데 식으로 가능할지 모르겠네요.
자동추세선식에 하나로 만들어주심 감사하겠습니다..
가능하면 색도 녹색, 파랑, 빨간색으로 구분해주시구요..
점선이 아니라 실선으로 하고 싶은데 그것도 가능할런지요 ^^
쓰고있는 자동추세선 지표도 첨부하겠습니다.
- 1. snap0790.jpg (0.10 MB)