답변완료
점찍기 좀 부탁 드립니다.
* 안녕 하세요^^
* 아래 수식에서 스톡 케스트 K선이 기준선 20을 UP 할때 가격이
20이평선 가격 보다
10틱 보다 더 작으면 점찍기( " ●" ) 좀 부탁 드립니다.
##
Input : Period(12), Period1(5), Period2(5);
Var : value1(0), value2(0), value3(0);
value1 = StochasticsK(Period, Period1);
value2 = StochasticsD(Period, Period1, Period2);
var : TL04(0);
if CrossDown( Var29 , Var30 ) AND Var30 > 0.4 Then
{
TL04 = Text_New(sdate,stime,H + PriceScale*2,"●");
Text_SetStyle(TL04,2,2);
Text_SetColor(TL04, Rgb(0,0,0) );
Text_SetSize(TL04,20);
}
* 수고 하세요
2024-07-28
890
글번호 181943
지표
답변완료
수식으로 표현해주세요.
추세선 기준 고점을 잡을려고 합니다.
if h <= h[1] && h[1] > h[2] then
{ SHL = L[1];
if CrossDown(l,l[1]) Then
{T = 1;
hd = sDate[1];
hT = sTime[1];
hh = H[1]; };
}
if T == 1 Then
{ T=2;
SHD[0] = hd;
SHT[0] = ht;
SHV[0] = hh;
TL = TL_New(SLD[0],SLT[0],SLV[0],SHD[0],SHT[0],SHV[0]);
}
===============
// h[1],l[1]이 기준봉이 되고 만약 기준봉 이후에 오는 잉태형 봉이 오면 추세가 없어서 생략하고, 그 후에 오는 봉의 저점이 기준봉 저점을 하락 돌파하면 그때 고점 확정 sdate stime 입력 hd = sDate[2]; hT = sTime[2]; , 만약 기준봉 저점을 하락 돌파 못하고 기준봉 고점을 상승돌파하면 고점 확정 실패로 보고 무시.
문제는 기준봉이후 기준봉의 고점 또는 저점을 하락돌파도 상승돌파도 못하는 잉태형 봉이 계속 나올 경우 계속 무시해야 하는데
hd = sdate[?] 몇일 만에 하락돌파했는지 날 수 ? 입력해야 합니다.
for 문으로 돌려서 하면 될 것 같은데
// 넉넉하게 10일 정도 안에는 상향 또는 하향 돌파할 태니
for cnt 1 to 10
cnt = cnt +1
if CrossDown(l,l[cnt])
{T = 1;
hd = sDate[cnt];
hT = sTime[cnt];
hh = H[cnt]; };
// 10거래일 전이라도 상향 또는 하향 돌파하면 종료
exit if CrossDown(l,l[기준봉일]) or crossup(h,h[기준봉일])
도와 주세요. 풀어쓰면 이렇게 될까요.
if h <= h[1] && h[1] > h[2] then
{ SHL = L[1];
if CrossDown(l,l[1]) Then
{T = 1;
hd = sDate[1];
hT = sTime[1];
hh = H[1]; };
if CrossDown(l,l[2]) Then
{T = 1;
hd = sDate[2];
hT = sTime[2];
hh = H[2]; };
exit if CrossDown(l,l[기준봉일]) or crossup(h,h[기준봉일])
if CrossDown(l,l[3]) Then
{T = 1;
hd = sDate[3];
hT = sTime[3];
hh = H[3]; };
exit if CrossDown(l,l[기준봉일]) or crossup(h,h[기준봉일])
if CrossDown(l,l[4]) Then
{T = 1;
hd = sDate[4];
hT = sTime[4];
hh = H[4]; };
exit if CrossDown(l,l[기준봉일]) or crossup(h,h[기준봉일])
}
모르겠네요.
2024-07-27
909
글번호 181942
지표
답변완료
종목검색
shortPeriod(9),midPeriod(26),longPeriod(52)
가 = shift(close,(-26)+1)
나 = shift((highest(high,shortPeriod)+lowest(low,shortPeriod)+highest(high,midPeriod)+lowest(low,midPeriod))/4,midPeriod-1);
다 = shift((highest(high,longPeriod)+lowest(low,longPeriod))/2,midPeriod-1);
라 = (highest(high,26)+lowest(low,26))/2;
마 = (highest(high,9)+lowest(low,9))/2;
CROSSUP(가, 라) &&
CROSSUP(나, 다) &&
다(1) < 다&&
라(1) < 라&&
CROSSUP(C,라)&&
CROSSUP(C,마)&&
C(1) < C
삼복더위에 수고하십니다
감사합니다
고맙습니다
2024-07-26
837
글번호 181939
종목검색
답변완료
확인 부탁드립니다.
안녕하세요
수정하여 보내주신 시스템 수식은 잘 받았습니다.
그런데 챠트에 적용하여보니 신호가 나오지 않고 있습니다.
90틱 챠트에 적용해도 그렇고 3분봉 챠트에 적용하여 봐도 나오지 않고 있습니다.
다시한번 검토부탁드리며 아울러 지표도 같이 부탁드립니다.
다시한번 노고에 감사드립니다.
(수정하여 보내주신 시스템 수식)
input : 타주기분1(3),타주기분2(15),타주기분3(60),EMAP(5),TMAP(20);
var : S1(0),D1(0),TM(0),TF1(0),TF2(0),TF3(0),cnt(0);
var : O2(0),O3(0),O21(0),O31(0);
var : EP(0),i1(0),i2(0),i3(0),Pre1(0),Pre2(0),Pre3(0),E1(0),E2(0),E3(0);
Var : Sum1(0),sum2(0),Tma(0),TLen(0),TMA1(0);
Array : C1[100](0),M1[100](0);
EP = 2/(EMAP+1);
TLen = Ceiling((TMAP + 1) * .5);
if Bdate != Bdate[1] Then
{
S1 = TimeToMinutes(stime);
D1 = sdate;
}
if D1 > 0 then
{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
TF1 = TM%타주기분1;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and 타주기분1 > 1 and TF1 < TF1[1]) or
(Bdate == Bdate[1] and 타주기분1 > 1 and TM >= TM[1]+타주기분1) or
(Bdate == Bdate[1] and 타주기분1 == 1 and TM > TM[1]) Then
{
i1 = i1+1;
Pre1 = E1[1];
for cnt = 99 downto 1
{
C1[cnt] = C1[cnt-1];
m1[cnt] = m1[cnt-1];
}
TMA1 = TMA[1];
}
C1[0] = c;
if C1[TLen-1] > 0 Then
{
Sum1 = 0;
For cnt = 0 To TLen - 1
{
Sum1 = Sum1 + C1[cnt];
}
m1[0] = sum1/TLen;
}
if m1[TLen-1] > 0 Then
{
Sum2 = 0;
For cnt = 0 To TLen - 1
{
Sum2 = Sum2 + m1[cnt];
}
Tma = sum2/TLen;
}
if i1 <= 1 then
E1 = C;
else
E1 = C * EP + Pre1 * (1-EP);
TF2 = TM%타주기분2;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and 타주기분2 > 1 and TF2 < TF2[1]) or
(Bdate == Bdate[1] and 타주기분2 > 1 and TM >= TM[1]+타주기분1) or
(Bdate == Bdate[1] and 타주기분2 == 1 and TM > TM[1]) Then
{
i2 = i2+1;
O2 = O;
O21 = O2[1];
Pre2 = E2[1];
}
if i2 <= 1 then
E2 = C;
else
E2 = C * EP + Pre2 * (1-EP);
TF3 = TM%타주기분3;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and 타주기분3 > 1 and TF3 < TF3[1]) or
(Bdate == Bdate[1] and 타주기분3 > 1 and TM >= TM[1]+타주기분3) or
(Bdate == Bdate[1] and 타주기분3 == 1 and TM > TM[1]) Then
{
i3 = i3+1;
O3 = O;
O31 = O2[1];
Pre3 = E3[1];
}
if i3 <= 1 then
E3 = C;
else
E3 = C * EP + Pre3 * (1-EP);
if TMA1 > 0 and
E3 > O3 and pre3 < O31 and
E2 > O2 and pre2 < O21 and
TMA > E1 and TMA1 < pre1 Then
Buy();
if TMA1 > 0 and
E3 < O3 and pre3 > O31 and
E2 < O2 and pre2 > O21 and
TMA < E1 and TMA1 > pre1 Then
Sell();
}
(수정의뢰하였던 기존 수식)
더운 날씨에 저희의 수고를 덜어주셔서 감사드립니다.
아래 시스템과 지표의 수식을 다시한번 수정 부탁드립니다.
고맙습니다.
진입은 틱챠트에서 합니다
1.매수조건 (3개의 조건이 한개라도 안맞을시 신호 불가)
- 1시간봉 시가선을 지수5 이평이 상향크로스
- 15 분봉 시가선을 지수5 이평이 상향크로스
- 3 분봉에서는 오직 20삼각가중선을 지수 5 이평이 상향 크로스할때 매수
(분봉 시가선, 삼각가중, 지수이평은 변수)
2.매도조건 (3개의 조건이 한개라도 안맞을시 신호 불가)
- 1시간봉 시가선을 지수5 이평이 하향크로스
- 15 분봉 시가선을 지수5 이평이 하향크로스
- 3 분봉에서는 오직 20삼각가중선을 지수 5 이평이 하향 크로스할때 매도
(분봉 시가선, 삼각가중, 지수이평은 변수)
1
input : 타주기분1(3),타주기분2(60),타주기분3(240),전환선기간(9);
var : S1(0),D1(0),TM(0),cnt(0),hh(0),ll(0),전환선(0);
var : TF1(0),TF2(0),TF3(0),O2(0),O3(0),H2(0),L2(0);
Array : H1[100](0),L1[100](0);
if Bdate != Bdate[1] Then
{
S1 = TimeToMinutes(stime);
D1 = sdate;
}
if D1 > 0 then
{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
TF1 = TM%타주기분1;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and 타주기분1 > 1 and TF1 < TF1[1]) or
(Bdate == Bdate[1] and 타주기분1 > 1 and TM >= TM[1]+타주기분1) or
(Bdate == Bdate[1] and 타주기분1 == 1 and TM > TM[1]) Then
{
For cnt = 99 DownTo 1
{
H1[cnt] = H1[cnt-1];
L1[cnt] = L1[cnt-1];
}
H1[0] = H;
L1[0] = L;
}
if H1[0] > 0 and H > H1[0] Then
H1[0] = H;
if L1[0] > 0 and L < L1[0] Then
L1[0] = L;
TF2 = TM%타주기분2;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and 타주기분2 > 1 and TF2 < TF2[1]) or
(Bdate == Bdate[1] and 타주기분2 > 1 and TM >= TM[1]+타주기분1) or
(Bdate == Bdate[1] and 타주기분2 == 1 and TM > TM[1]) Then
{
O2 = O;
H2 = H;
L2 = L;
}
if H2 > 0 and H > H2 Then
H2 = H;
if L2 > 0 and L < L2 Then
L2 = L;
TF3 = TM%타주기분3;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and 타주기분3 > 1 and TF3 < TF3[1]) or
(Bdate == Bdate[1] and 타주기분3 > 1 and TM >= TM[1]+타주기분3) or
(Bdate == Bdate[1] and 타주기분3 == 1 and TM > TM[1]) Then
{
O3 = O;
}
if O2 > 0 and O3 > 0 and H1[전환선기간-1] > 0 and L1[전환선기간-1] > 0 Then
{
hh = 0;
ll = 0;
For cnt = 0 to 전환선기간-1
{
if hh == 0 or (hh > 0 and H1[cnt] > hh) Then
hh = H1[cnt];
if ll == 0 or (ll > 0 and L1[cnt] < ll) Then
ll = L1[cnt];
}
전환선 = (hh+ll)/2;
if C > O3 and
C > O2 and
C >= L2+(H2-L2)*0.25 and
C > 전환선 then
Buy();
if C < O3 and
C < O2 and
C <= H2-(H2-L2)*0.25 and
C < 전환선 then
Sell();
}
}
2
input : 타주기분1(3),타주기분2(60),타주기분3(240),전환선기간(9);
var : S1(0),D1(0),TM(0),cnt(0),hh(0),ll(0),전환선(0);
var : TF1(0),TF2(0),TF3(0),O2(0),O3(0),H2(0),L2(0),tx(0);
Array : H1[100](0),L1[100](0);
if Bdate != Bdate[1] Then
{
S1 = TimeToMinutes(stime);
D1 = sdate;
}
if D1 > 0 then
{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
TF1 = TM%타주기분1;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and 타주기분1 > 1 and TF1 < TF1[1]) or
(Bdate == Bdate[1] and 타주기분1 > 1 and TM >= TM[1]+타주기분1) or
(Bdate == Bdate[1] and 타주기분1 == 1 and TM > TM[1]) Then
{
For cnt = 99 DownTo 1
{
H1[cnt] = H1[cnt-1];
L1[cnt] = L1[cnt-1];
}
H1[0] = H;
L1[0] = L;
}
if H1[0] > 0 and H > H1[0] Then
H1[0] = H;
if L1[0] > 0 and L < L1[0] Then
L1[0] = L;
TF2 = TM%타주기분2;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and 타주기분2 > 1 and TF2 < TF2[1]) or
(Bdate == Bdate[1] and 타주기분2 > 1 and TM >= TM[1]+타주기분1) or
(Bdate == Bdate[1] and 타주기분2 == 1 and TM > TM[1]) Then
{
O2 = O;
H2 = H;
L2 = L;
}
if H2 > 0 and H > H2 Then
H2 = H;
if L2 > 0 and L < L2 Then
L2 = L;
TF3 = TM%타주기분3;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and 타주기분3 > 1 and TF3 < TF3[1]) or
(Bdate == Bdate[1] and 타주기분3 > 1 and TM >= TM[1]+타주기분3) or
(Bdate == Bdate[1] and 타주기분3 == 1 and TM > TM[1]) Then
{
O3 = O;
}
if O2 > 0 and O3 > 0 and H1[전환선기간-1] > 0 and L1[전환선기간-1] > 0 Then
{
hh = 0;
ll = 0;
For cnt = 0 to 전환선기간-1
{
if hh == 0 or (hh > 0 and H1[cnt] > hh) Then
hh = H1[cnt];
if ll == 0 or (ll > 0 and L1[cnt] < ll) Then
ll = L1[cnt];
}
전환선 = (hh+ll)/2;
if C > O3 and
C > O2 and
C >= L2+(H2-L2)*0.25 and
C > 전환선 then
{
tx = Text_New(sDate,sTime,H,"●");
Text_SetColor(tx,Red);
Text_SetStyle(tx,2,1);
Text_SetSize(tx,12);
}
if C < O3 and
C < O2 and
C <= H2-(H2-L2)*0.25 and
C < 전환선 then
{
tx = Text_New(sDate,sTime,H,"●");
Text_SetColor(tx,Blue);
Text_SetStyle(tx,2,1);
Text_SetSize(tx,12);
}
plot1(O2);
plot2(O3);
plot3(전환선);
plot4(L2+(H2-L2)*0.25);
plot5(H2-(H2-L2)*0.25);
}
}
2024-07-26
745
글번호 181936
시스템
답변완료
종목검색
shortPeriod(9),midPeriod(26),longPeriod(52)
선행1=shift((highest(high,shortPeriod)+lowest(low,shortPeriod)+highest(high,midPeriod)+lowest(low,midPeriod))/4,midPeriod-1);
선행2=shift((highest(high,longPeriod)+lowest(low,longPeriod))/2,midPeriod-1);
후행스팬 = shift(close,-midPeriod+1);
M10 = ma(C, 10);
M60 = ma(C, 60);
CrossUP(선행1, 선행2,(-25)) &&
M10 > M60 &&
CROSSUP(후행스팬,M60)&&
M60(60)<M60&&
M60(1)<M60
감사합니다
2024-07-26
684
글번호 181935
종목검색