커뮤니티
재문의드립니다~
2016-06-16 20:47:07
150
글번호 99185
Input:length(10);
Var:j(0),lastHiVal(0),lastLoVal(0),turnPntBit(""),TL1(0),tx(0);
Array:valArr[10](0),barArr[10](0),turnPntArr[10]("");
// 봉이 새로 생겼으므로 봉개수 관리하는 변수들의 봉개수 값 1씩 증가
For j = 0 To 9
{
barArr[j] = barArr[j] + 1;
}
// 고점조건 = 현재 봉의 고가가 기간최고가이면서 최고가 갱신되었을 때;
// 저점조건 = 현재 봉의 저가가 기간최저가이면서 최저가 갱신되었을 때;
// 고점,저점조건 만족시 현재 봉의 고[저]가를 변수에 저장
Condition1 = Highest(H,length) == H and lastHiVal <> H;
Condition2 = Lowest(L,length) == L and lastLoVal <> L;
If Condition1 Then lastHiVal = H;
If Condition2 Then lastLoVal = L;
// 전환점구분 null값으로 초기화;
turnPntBit = "";
// if 고점조건, 저점조건 동시 만족시 then
// if 이전 고점,저점 범위를 모두 벗어났을 때
// 전환점구분 = 고저점;
// else if 이전 고점을 갱신했다면 전환점구분 = 고점;
// else if 이전 저점을 갱신했다면 전환점구분 = 저점;
// else if 고점조건 만족하면 전환점구분 = 고점;
// else if 저점조건 만족하면 전환점구분 = 저점;
If Condition1 and Condition2 Then
{
If Max(valArr[1],valArr[2]) < H and Min(valArr[1],valArr[2]) > L Then
turnPntBit = "HiLo";
Else If Max(valArr[1],valArr[2]) < H Then turnPntBit = "Hi";
Else If Min(valArr[1],valArr[2]) > L Then turnPntBit = "Lo";
}
Else If Condition1 Then turnPntBit = "Hi";
Else If Condition2 Then turnPntBit = "Lo";
// if 전환점구분에 값이 있을 때만 then 아래 실행, 없으면 통과
If turnPntBit <> "" Then
{
// if 전환점구분이 고저점이면 then
// 이전 파동은 연장시키고 아래에서 새로이 파동선을 추가토록 한다.
If turnPntBit == "HiLo" Then
{
valArr[1] = IFF(turnPntArr[1] == "Hi",H,L);
barArr[1] = 0;
TL_SetEnd(TL1,sDate[barArr[1]],sTime[barArr[1]],valArr[1]);
If turnPntArr[1] == "Hi" Then
turnPntBit = "Lo";
Else
turnPntBit = "Hi";
}
// if 신규 전환점구분이 현재(전환점배열 1번째)와 다르면 then
// 배열값들을 이전값으로 Move;
If turnPntBit <> turnPntArr[1] Then
{
for j = 8 downto 1
{
valArr[j+1] = valArr[j];
barArr[j+1] = barArr[j];
turnPntArr[j+1] = turnPntArr[j];
}
}
// if 전환점구분이 바뀌었거나 또는
// (전환점구분은 안바뀌었는데
// (이전 고점보다 높은 고점이 발생했거나 또는
// 이전 저점보다 낮은 저점이 발생했으면)) then
If turnPntBit <> turnPntArr[1] or
(turnPntBit == turnPntArr[1] and
((turnPntBit == "Hi" and valArr[1] < H) or
(turnPntBit == "Lo" and valArr[1] > L))) Then
{
// 값 배열에는 고점 또는 저점을 대입;
// 봉개수 배열에는 0값 대입;
// 전환점 배열에 전환점구분값을 대입;
valArr[1] = IFF(turnPntBit == "Hi",H,L);
barArr[1] = 0;
turnPntArr[1] = turnPntBit;
// if 이전봉대비 전환점구분이 바뀌었다면 추세선 새로 그리고;
// else 전환점구분이 안바뀌었으면 값만 바뀐거므로 추세선 연장;
If turnPntArr[1][1] <> turnPntArr[1][0] Then{
if turnPntArr[1][0] == "Hi" then
tx = Text_New(sDate[barArr[1]],sTime[barArr[1]],valArr[1],"고점");
else
tx = Text_New(sDate[barArr[1]],sTime[barArr[1]],valArr[1],"저점");
Text_SetStyle(tx,2,2);
TL1 = TL_New(sDate[barArr[2]],sTime[barArr[2]],valArr[2],
sDate[barArr[1]],sTime[barArr[1]],valArr[1]);
}
Else
TL_SetEnd(TL1,sDate[barArr[1]],sTime[barArr[1]],valArr[1]);
}
}
TL_SetSize(TL1,4);
TL_SetColor(TL1,GREEN);
Plot1(Highest(H,length));
Plot2(Lowest(L,length));
밑에 글에 고점,저점 표시 입니다
1. 고점 저점에 매수,매도 신호를 도입하고싶습니다
고점=매도 저점=매수 (청산신호는 패스 그냥 매수,매도 신호만 나오게) 화살표는 하나만
2. 예시: 120틱을 2가지 차트를 켜놓고 하나의 차트에는 Input:length(5);
또 다른 하나의 차트에는 Input:length(10); 그리고난후
두가지가 같이 1번처럼 고점=매도 저점=매수 가 일치할경우 신호발생
2차트가 동시에 고점 이 나올경우 매도로 신호발생
2차트가 동시에 저점 이 나올경우 매수로 신호발생
3.번 위 2번에서 다른 밑에 청산 수식하나 더 부탁드립니다~
청산은 고점이 나와서 매도 신호가 나왔는데 매도 신호가 나온 봉을 기준으로 고점을
뚫으경우
청산은 저점이 나와서 매수 신호가 나왔는데 그 매수신호 나온 봉의 기준으로 고점을
뚫을경우
답변 1
예스스탁 예스스탁 답변
2016-06-17 10:48:19
안녕하세요
예스스탁입니다.
1.
Input:length1(5);
Input:length2(10);
Var:j(0),lastHiVal(0),lastLoVal(0),turnPntBit(""),TL1(0),tx(0);
Array:valArr[10](0),barArr[10](0),turnPntArr[10]("");
Var:j2(0),lastHiVal2(0),lastLoVal2(0),turnPntBit2(""),TL21(0),tx2(0);
Array:valArr2[10](0),barArr2[10](0),turnPntArr2[10]("");
For j = 0 To 9
{
barArr[j] = barArr[j] + 1;
}
Condition1 = Highest(H,length1) == H and lastHiVal <> H;
Condition2 = Lowest(L,length1) == L and lastLoVal <> L;
If Condition1 Then lastHiVal = H;
If Condition2 Then lastLoVal = L;
turnPntBit = "";
If Condition1 and Condition2 Then
{
If Max(valArr[1],valArr[2]) < H and Min(valArr[1],valArr[2]) > L Then
turnPntBit = "HiLo";
Else If Max(valArr[1],valArr[2]) < H Then turnPntBit = "Hi";
Else If Min(valArr[1],valArr[2]) > L Then turnPntBit = "Lo";
}
Else If Condition1 Then turnPntBit = "Hi";
Else If Condition2 Then turnPntBit = "Lo";
If turnPntBit <> "" Then
{
If turnPntBit == "HiLo" Then
{
valArr[1] = IFF(turnPntArr[1] == "Hi",H,L);
barArr[1] = 0;
TL_SetEnd(TL1,sDate[barArr[1]],sTime[barArr[1]],valArr[1]);
If turnPntArr[1] == "Hi" Then
turnPntBit = "Lo";
Else
turnPntBit = "Hi";
}
If turnPntBit <> turnPntArr[1] Then
{
for j = 8 downto 1
{
valArr[j+1] = valArr[j];
barArr[j+1] = barArr[j];
turnPntArr[j+1] = turnPntArr[j];
}
}
If turnPntBit <> turnPntArr[1] or
(turnPntBit == turnPntArr[1] and
((turnPntBit == "Hi" and valArr[1] < H) or
(turnPntBit == "Lo" and valArr[1] > L))) Then
{
valArr[1] = IFF(turnPntBit == "Hi",H,L);
barArr[1] = 0;
turnPntArr[1] = turnPntBit;
If turnPntArr[1][1] <> turnPntArr[1][0] Then{
if turnPntArr[1][0] == "Hi" then{
tx = Text_New(sDate[barArr[1]],sTime[barArr[1]],valArr[1],"고점1");
sell();
}
else{
tx = Text_New(sDate[barArr[1]],sTime[barArr[1]],valArr[1],"저점1");
buy();
}
Text_SetStyle(tx,2,2);
TL1 = TL_New(sDate[barArr[2]],sTime[barArr[2]],valArr[2],
sDate[barArr[1]],sTime[barArr[1]],valArr[1]);
}
Else
TL_SetEnd(TL1,sDate[barArr[1]],sTime[barArr[1]],valArr[1]);
}
}
TL_SetSize(TL1,4);
TL_SetColor(TL1,GREEN);
2
Input:length1(5);
Input:length2(10);
Var:j(0),lastHiVal(0),lastLoVal(0),turnPntBit(""),TL1(0),tx(0);
Array:valArr[10](0),barArr[10](0),turnPntArr[10]("");
Var:j2(0),lastHiVal2(0),lastLoVal2(0),turnPntBit2(""),TL21(0),tx2(0);
Array:valArr2[10](0),barArr2[10](0),turnPntArr2[10]("");
var : T1(0);
For j = 0 To 9
{
barArr[j] = barArr[j] + 1;
}
Condition1 = Highest(H,length1) == H and lastHiVal <> H;
Condition2 = Lowest(L,length1) == L and lastLoVal <> L;
If Condition1 Then lastHiVal = H;
If Condition2 Then lastLoVal = L;
turnPntBit = "";
If Condition1 and Condition2 Then
{
If Max(valArr[1],valArr[2]) < H and Min(valArr[1],valArr[2]) > L Then
turnPntBit = "HiLo";
Else If Max(valArr[1],valArr[2]) < H Then turnPntBit = "Hi";
Else If Min(valArr[1],valArr[2]) > L Then turnPntBit = "Lo";
}
Else If Condition1 Then turnPntBit = "Hi";
Else If Condition2 Then turnPntBit = "Lo";
T1 = 0;
If turnPntBit <> "" Then
{
If turnPntBit == "HiLo" Then
{
valArr[1] = IFF(turnPntArr[1] == "Hi",H,L);
barArr[1] = 0;
TL_SetEnd(TL1,sDate[barArr[1]],sTime[barArr[1]],valArr[1]);
If turnPntArr[1] == "Hi" Then
turnPntBit = "Lo";
Else
turnPntBit = "Hi";
}
If turnPntBit <> turnPntArr[1] Then
{
for j = 8 downto 1
{
valArr[j+1] = valArr[j];
barArr[j+1] = barArr[j];
turnPntArr[j+1] = turnPntArr[j];
}
}
If turnPntBit <> turnPntArr[1] or
(turnPntBit == turnPntArr[1] and
((turnPntBit == "Hi" and valArr[1] < H) or
(turnPntBit == "Lo" and valArr[1] > L))) Then
{
valArr[1] = IFF(turnPntBit == "Hi",H,L);
barArr[1] = 0;
turnPntArr[1] = turnPntBit;
If turnPntArr[1][1] <> turnPntArr[1][0] Then{
if turnPntArr[1][0] == "Hi" then{
tx = Text_New(sDate[barArr[1]],sTime[barArr[1]],valArr[1],"고점1");
T1 = T1-1;
}
else{
tx = Text_New(sDate[barArr[1]],sTime[barArr[1]],valArr[1],"저점1");
T1 = T1+1;
}
Text_SetStyle(tx,2,2);
TL1 = TL_New(sDate[barArr[2]],sTime[barArr[2]],valArr[2],
sDate[barArr[1]],sTime[barArr[1]],valArr[1]);
}
Else
TL_SetEnd(TL1,sDate[barArr[1]],sTime[barArr[1]],valArr[1]);
}
}
TL_SetSize(TL1,4);
TL_SetColor(TL1,GREEN);
For j2 = 0 To 9
{
barArr2[j2] = barArr2[j2] + 1;
}
Condition21 = Highest(H,length2) == H and lastHiVal2 <> H;
Condition22 = Lowest(L,length2) == L and lastLoVal2 <> L;
If Condition21 Then lastHiVal2 = H;
If Condition22 Then lastLoVal2 = L;
turnPntBit2 = "";
If Condition21 and Condition22 Then
{
If Max(valArr2[1],valArr2[2]) < H and Min(valArr2[1],valArr2[2]) > L Then
turnPntBit2 = "HiLo";
Else If Max(valArr2[1],valArr2[2]) < H Then turnPntBit2 = "Hi";
Else If Min(valArr2[1],valArr2[2]) > L Then turnPntBit2 = "Lo";
}
Else If Condition21 Then turnPntBit2 = "Hi";
Else If Condition22 Then turnPntBit2 = "Lo";
If turnPntBit2 <> "" Then
{
If turnPntBit2 == "HiLo" Then
{
valArr2[1] = IFF(turnPntArr2[1] == "Hi",H,L);
barArr2[1] = 0;
TL_SetEnd(TL21,sDate[barArr2[1]],sTime[barArr2[1]],valArr2[1]);
If turnPntArr2[1] == "Hi" Then
turnPntBit2 = "Lo";
Else
turnPntBit2 = "Hi";
}
If turnPntBit2 <> turnPntArr2[1] Then
{
for j2 = 8 downto 1
{
valArr2[j2+1] = valArr2[j2];
barArr2[j2+1] = barArr2[j2];
turnPntArr2[j2+1] = turnPntArr2[j2];
}
}
If turnPntBit2 <> turnPntArr2[1] or
(turnPntBit2 == turnPntArr2[1] and
((turnPntBit2 == "Hi" and valArr2[1] < H) or
(turnPntBit2 == "Lo" and valArr2[1] > L))) Then
{
valArr2[1] = IFF(turnPntBit2 == "Hi",H,L);
barArr2[1] = 0;
turnPntArr2[1] = turnPntBit2;
If turnPntArr2[1][1] <> turnPntArr2[1][0] Then{
if turnPntArr2[1][0] == "Hi" then{
tx2 = Text_New(sDate[barArr2[1]],sTime[barArr2[1]],valArr2[1],"고점2");
T1 = T1+-1;
}
else{
tx2 = Text_New(sDate[barArr2[1]],sTime[barArr2[1]],valArr2[1],"저점2");
T1 = T1+ 1;
}
Text_SetStyle(tx2,2,2);
TL21 = TL_New(sDate[barArr2[2]],sTime[barArr2[2]],valArr2[2],
sDate[barArr2[1]],sTime[barArr2[1]],valArr2[1]);
}
Else
TL_SetEnd(TL21,sDate[barArr2[1]],sTime[barArr2[1]],valArr2[1]);
}
}
TL_SetSize(TL21,4);
TL_SetColor(TL21,cyan);
if T1 == 2 Then
buy();
if T1 == -2 Then
sell();
3.
Input:length1(5);
Input:length2(10);
Var:j(0),lastHiVal(0),lastLoVal(0),turnPntBit(""),TL1(0),tx(0);
Array:valArr[10](0),barArr[10](0),turnPntArr[10]("");
Var:j2(0),lastHiVal2(0),lastLoVal2(0),turnPntBit2(""),TL21(0),tx2(0);
Array:valArr2[10](0),barArr2[10](0),turnPntArr2[10]("");
var : T1(0);
For j = 0 To 9
{
barArr[j] = barArr[j] + 1;
}
Condition1 = Highest(H,length1) == H and lastHiVal <> H;
Condition2 = Lowest(L,length1) == L and lastLoVal <> L;
If Condition1 Then lastHiVal = H;
If Condition2 Then lastLoVal = L;
turnPntBit = "";
If Condition1 and Condition2 Then
{
If Max(valArr[1],valArr[2]) < H and Min(valArr[1],valArr[2]) > L Then
turnPntBit = "HiLo";
Else If Max(valArr[1],valArr[2]) < H Then turnPntBit = "Hi";
Else If Min(valArr[1],valArr[2]) > L Then turnPntBit = "Lo";
}
Else If Condition1 Then turnPntBit = "Hi";
Else If Condition2 Then turnPntBit = "Lo";
T1 = 0;
If turnPntBit <> "" Then
{
If turnPntBit == "HiLo" Then
{
valArr[1] = IFF(turnPntArr[1] == "Hi",H,L);
barArr[1] = 0;
TL_SetEnd(TL1,sDate[barArr[1]],sTime[barArr[1]],valArr[1]);
If turnPntArr[1] == "Hi" Then
turnPntBit = "Lo";
Else
turnPntBit = "Hi";
}
If turnPntBit <> turnPntArr[1] Then
{
for j = 8 downto 1
{
valArr[j+1] = valArr[j];
barArr[j+1] = barArr[j];
turnPntArr[j+1] = turnPntArr[j];
}
}
If turnPntBit <> turnPntArr[1] or
(turnPntBit == turnPntArr[1] and
((turnPntBit == "Hi" and valArr[1] < H) or
(turnPntBit == "Lo" and valArr[1] > L))) Then
{
valArr[1] = IFF(turnPntBit == "Hi",H,L);
barArr[1] = 0;
turnPntArr[1] = turnPntBit;
If turnPntArr[1][1] <> turnPntArr[1][0] Then{
if turnPntArr[1][0] == "Hi" then{
tx = Text_New(sDate[barArr[1]],sTime[barArr[1]],valArr[1],"고점1");
T1 = T1-1;
}
else{
tx = Text_New(sDate[barArr[1]],sTime[barArr[1]],valArr[1],"저점1");
T1 = T1+1;
}
Text_SetStyle(tx,2,2);
TL1 = TL_New(sDate[barArr[2]],sTime[barArr[2]],valArr[2],
sDate[barArr[1]],sTime[barArr[1]],valArr[1]);
}
Else
TL_SetEnd(TL1,sDate[barArr[1]],sTime[barArr[1]],valArr[1]);
}
}
TL_SetSize(TL1,4);
TL_SetColor(TL1,GREEN);
For j2 = 0 To 9
{
barArr2[j2] = barArr2[j2] + 1;
}
Condition21 = Highest(H,length2) == H and lastHiVal2 <> H;
Condition22 = Lowest(L,length2) == L and lastLoVal2 <> L;
If Condition21 Then lastHiVal2 = H;
If Condition22 Then lastLoVal2 = L;
turnPntBit2 = "";
If Condition21 and Condition22 Then
{
If Max(valArr2[1],valArr2[2]) < H and Min(valArr2[1],valArr2[2]) > L Then
turnPntBit2 = "HiLo";
Else If Max(valArr2[1],valArr2[2]) < H Then turnPntBit2 = "Hi";
Else If Min(valArr2[1],valArr2[2]) > L Then turnPntBit2 = "Lo";
}
Else If Condition21 Then turnPntBit2 = "Hi";
Else If Condition22 Then turnPntBit2 = "Lo";
If turnPntBit2 <> "" Then
{
If turnPntBit2 == "HiLo" Then
{
valArr2[1] = IFF(turnPntArr2[1] == "Hi",H,L);
barArr2[1] = 0;
TL_SetEnd(TL21,sDate[barArr2[1]],sTime[barArr2[1]],valArr2[1]);
If turnPntArr2[1] == "Hi" Then
turnPntBit2 = "Lo";
Else
turnPntBit2 = "Hi";
}
If turnPntBit2 <> turnPntArr2[1] Then
{
for j2 = 8 downto 1
{
valArr2[j2+1] = valArr2[j2];
barArr2[j2+1] = barArr2[j2];
turnPntArr2[j2+1] = turnPntArr2[j2];
}
}
If turnPntBit2 <> turnPntArr2[1] or
(turnPntBit2 == turnPntArr2[1] and
((turnPntBit2 == "Hi" and valArr2[1] < H) or
(turnPntBit2 == "Lo" and valArr2[1] > L))) Then
{
valArr2[1] = IFF(turnPntBit2 == "Hi",H,L);
barArr2[1] = 0;
turnPntArr2[1] = turnPntBit2;
If turnPntArr2[1][1] <> turnPntArr2[1][0] Then{
if turnPntArr2[1][0] == "Hi" then{
tx2 = Text_New(sDate[barArr2[1]],sTime[barArr2[1]],valArr2[1],"고점2");
T1 = T1+-1;
}
else{
tx2 = Text_New(sDate[barArr2[1]],sTime[barArr2[1]],valArr2[1],"저점2");
T1 = T1+ 1;
}
Text_SetStyle(tx2,2,2);
TL21 = TL_New(sDate[barArr2[2]],sTime[barArr2[2]],valArr2[2],
sDate[barArr2[1]],sTime[barArr2[1]],valArr2[1]);
}
Else
TL_SetEnd(TL21,sDate[barArr2[1]],sTime[barArr2[1]],valArr2[1]);
}
}
TL_SetSize(TL21,4);
TL_SetColor(TL21,cyan);
if T1 == 2 Then
buy();
if T1 == -2 Then
sell();
if MarketPosition == 1 Then
ExitLong("bx",AtStop,valArr[1][BarsSinceEntry]);
if MarketPosition == -1 Then
ExitShort("sx",AtStop,valArr[1][BarsSinceEntry]);
즐거운 하루되세요
> 곽민수 님이 쓴 글입니다.
> 제목 : 재문의드립니다~
> Input:length(10);
Var:j(0),lastHiVal(0),lastLoVal(0),turnPntBit(""),TL1(0),tx(0);
Array:valArr[10](0),barArr[10](0),turnPntArr[10]("");
// 봉이 새로 생겼으므로 봉개수 관리하는 변수들의 봉개수 값 1씩 증가
For j = 0 To 9
{
barArr[j] = barArr[j] + 1;
}
// 고점조건 = 현재 봉의 고가가 기간최고가이면서 최고가 갱신되었을 때;
// 저점조건 = 현재 봉의 저가가 기간최저가이면서 최저가 갱신되었을 때;
// 고점,저점조건 만족시 현재 봉의 고[저]가를 변수에 저장
Condition1 = Highest(H,length) == H and lastHiVal <> H;
Condition2 = Lowest(L,length) == L and lastLoVal <> L;
If Condition1 Then lastHiVal = H;
If Condition2 Then lastLoVal = L;
// 전환점구분 null값으로 초기화;
turnPntBit = "";
// if 고점조건, 저점조건 동시 만족시 then
// if 이전 고점,저점 범위를 모두 벗어났을 때
// 전환점구분 = 고저점;
// else if 이전 고점을 갱신했다면 전환점구분 = 고점;
// else if 이전 저점을 갱신했다면 전환점구분 = 저점;
// else if 고점조건 만족하면 전환점구분 = 고점;
// else if 저점조건 만족하면 전환점구분 = 저점;
If Condition1 and Condition2 Then
{
If Max(valArr[1],valArr[2]) < H and Min(valArr[1],valArr[2]) > L Then
turnPntBit = "HiLo";
Else If Max(valArr[1],valArr[2]) < H Then turnPntBit = "Hi";
Else If Min(valArr[1],valArr[2]) > L Then turnPntBit = "Lo";
}
Else If Condition1 Then turnPntBit = "Hi";
Else If Condition2 Then turnPntBit = "Lo";
// if 전환점구분에 값이 있을 때만 then 아래 실행, 없으면 통과
If turnPntBit <> "" Then
{
// if 전환점구분이 고저점이면 then
// 이전 파동은 연장시키고 아래에서 새로이 파동선을 추가토록 한다.
If turnPntBit == "HiLo" Then
{
valArr[1] = IFF(turnPntArr[1] == "Hi",H,L);
barArr[1] = 0;
TL_SetEnd(TL1,sDate[barArr[1]],sTime[barArr[1]],valArr[1]);
If turnPntArr[1] == "Hi" Then
turnPntBit = "Lo";
Else
turnPntBit = "Hi";
}
// if 신규 전환점구분이 현재(전환점배열 1번째)와 다르면 then
// 배열값들을 이전값으로 Move;
If turnPntBit <> turnPntArr[1] Then
{
for j = 8 downto 1
{
valArr[j+1] = valArr[j];
barArr[j+1] = barArr[j];
turnPntArr[j+1] = turnPntArr[j];
}
}
// if 전환점구분이 바뀌었거나 또는
// (전환점구분은 안바뀌었는데
// (이전 고점보다 높은 고점이 발생했거나 또는
// 이전 저점보다 낮은 저점이 발생했으면)) then
If turnPntBit <> turnPntArr[1] or
(turnPntBit == turnPntArr[1] and
((turnPntBit == "Hi" and valArr[1] < H) or
(turnPntBit == "Lo" and valArr[1] > L))) Then
{
// 값 배열에는 고점 또는 저점을 대입;
// 봉개수 배열에는 0값 대입;
// 전환점 배열에 전환점구분값을 대입;
valArr[1] = IFF(turnPntBit == "Hi",H,L);
barArr[1] = 0;
turnPntArr[1] = turnPntBit;
// if 이전봉대비 전환점구분이 바뀌었다면 추세선 새로 그리고;
// else 전환점구분이 안바뀌었으면 값만 바뀐거므로 추세선 연장;
If turnPntArr[1][1] <> turnPntArr[1][0] Then{
if turnPntArr[1][0] == "Hi" then
tx = Text_New(sDate[barArr[1]],sTime[barArr[1]],valArr[1],"고점");
else
tx = Text_New(sDate[barArr[1]],sTime[barArr[1]],valArr[1],"저점");
Text_SetStyle(tx,2,2);
TL1 = TL_New(sDate[barArr[2]],sTime[barArr[2]],valArr[2],
sDate[barArr[1]],sTime[barArr[1]],valArr[1]);
}
Else
TL_SetEnd(TL1,sDate[barArr[1]],sTime[barArr[1]],valArr[1]);
}
}
TL_SetSize(TL1,4);
TL_SetColor(TL1,GREEN);
Plot1(Highest(H,length));
Plot2(Lowest(L,length));
밑에 글에 고점,저점 표시 입니다
1. 고점 저점에 매수,매도 신호를 도입하고싶습니다
고점=매도 저점=매수 (청산신호는 패스 그냥 매수,매도 신호만 나오게) 화살표는 하나만
2. 예시: 120틱을 2가지 차트를 켜놓고 하나의 차트에는 Input:length(5);
또 다른 하나의 차트에는 Input:length(10); 그리고난후
두가지가 같이 1번처럼 고점=매도 저점=매수 가 일치할경우 신호발생
2차트가 동시에 고점 이 나올경우 매도로 신호발생
2차트가 동시에 저점 이 나올경우 매수로 신호발생
3.번 위 2번에서 다른 밑에 청산 수식하나 더 부탁드립니다~
청산은 고점이 나와서 매도 신호가 나왔는데 매도 신호가 나온 봉을 기준으로 고점을
뚫으경우
청산은 저점이 나와서 매수 신호가 나왔는데 그 매수신호 나온 봉의 기준으로 고점을
뚫을경우
다음글