커뮤니티

도움을 부탁드리겠습니다.

프로필 이미지
지스카드
2019-10-24 09:31:33
225
글번호 133061
답변완료
ㅠㅠ 도움을 부탁드립니다. 실행하면 예스트레이더가 다운되버립니다. 분봉차트에서 타주기를 계산합니다. 그 타주기의 가장긴 <양봉>의 <몸통길이>를 배열변수에 모두 담습니다. 그런다음 몸통길이가 가장 긴값의 2분의1지점에 해당하는 가격을 몸통중심가에 담고 싶습니다. 그 가장긴 몸통길이와 몸통중심가를 지표로 표현합니다. (이게 더 큰게 나타나면 갱신되면 좋겠습니다) 마지막으로!! 그 긴 몸통길이의 몸통중심가....의 바<위치>에서, 타주기가 아닌 현재차트주기의 5이평값을 plot3 으로 나타내고 싶습니다. ######## ## 주기 변경용 ###### Input : mm(15) ; var : j(0) , 계산주기(0) ; Array : MinOpen[100](0) , MinHigh[100](0), MinLow[100](0), MinClose[100](0), 몸통길이[100](0),몸통중심가격[100](0) ; If mm >= BarInterval Then { 계산주기 = mm/BarInterval ; } If DayIndex()%계산주기 == 0 Then { For j = 98 DownTo 0 { MinOpen[j+1] = MinOpen[j] ; MinHigh[j+1] = MinHigh[j] ; MinLow[j+1] = MinLow[j] ; MinClose[j+1] = MinClose[j] ; } MinOpen[0] = O ; MinHigh[0] = H ; MinLow[0] = L ; } If MinHigh[0] < H Then MinHigh[0] =H ; If MinLow[0] > L or MinLow[0]==0 Then MinLow[0] = L ; MinClose[0] = C ; // 몸통길이는 종가 -시가 For j = 98 DownTo 0 { 몸통길이[j ] = MinClose[j]-MinOpen[j] ; 몸통중심가격[j] = 몸통길이[j]*0.5 + MinOpen[j] ; } // 몸통길이중 가장긴거를 찾아서 // 몸통중심가격은 중심봉을 반 가르는 가격 Plot1( NthHighest (1, 몸통길이,40) , "몸통의길이") ; // 타주기의 가장긴 몸통 plot2( NthHighest(1,몸통중심가격,40) , "몸통중심가격") ; // plot1 몸통의 가운데 지점 가격 // 추가요청 plot2 지점에서 몸통중심가격에서의 타주기가 아닌 현재차트인( 3분봉의) 5 이평선 수치를 plot3으로 표현하고 싶습니다.
지표
답변 2
프로필 이미지

예스스탁 예스스탁 답변

2019-10-24 09:42:06

안녕하세요 예스스탁입니다. 1 Plot1( NthHighest (1, 몸통길이,40) , "몸통의길이") ; // 타주기의 가장긴 몸통 plot2( NthHighest(1,몸통중심가격,40) , "몸통중심가격") ; // plot1 몸통의 가운데 지점 가격 배열변수는 변수뒤에 [ ]로 공간번호를 반드시 지정하셔야 합니다. 또한 배열변수를 highest등의 함수에 쓰셔도 해당 0~99의 공간에서 찾는 것은 아닙니다. 2 당일 봉을 몇개씩 구분해서 다른 주기의 값을 계산하는 것은 정확한 방법이 아닙니다. 거래가 많아 거래가 없는 시간대가 없는 종목에서는 유효하지만 거래가 없는 시간대가 생기면 n개씩 구분한 봉으로 타주기의 값을 계산할수 없습니다. 3 input : ntime(15),P(5); var : S1(0),D1(0),TM(0),TF(0),j(0),HR(0),HP(0),HM(0); Array : MinOpen[100](0),MinHigh[100](0),MinLow[100](0),MinClose[100](0), 몸통길이[100](0),몸통중심가격[100](0) ; var1 = ma(C,P); 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; TF = TimeToMinutes(stime)%ntime; if bdate != Bdate[1] or (Bdate == Bdate[1] and TF < TF[1])Then { For j = 98 DownTo 0 { MinOpen[j+1] = MinOpen[j]; MinHigh[j+1] = MinHigh[j]; MinLow[j+1] = MinLow[j]; MinClose[j+1] = MinClose[j]; 몸통길이[j+1] = 몸통길이[j]; 몸통중심가격[j+1] = 몸통중심가격[j]; } MinOpen[0] = O; MinHigh[0] = H; MinLow[0] = L; } If MinHigh[0] > 0 and MinHigh[0] < H Then MinHigh[0] = H ; If MinLow[0] > 0 and MinLow[0] < L Then MinLow[0] = L ; MinClose[0] = C ; 몸통길이[0] = MinClose[0]-MinOpen[0] ; 몸통중심가격[0] = (MinClose[0]+MinOpen[0])/2; HR = 몸통길이[0]; HP = 몸통중심가격[0]; HM = var1; For j = 1 to 99 { if 몸통길이[j] > HR Then { HR = 몸통길이[j]; HP = 몸통중심가격[j]; HM = var1[j]; } } plot1(HR,"최대몸통길이"); plot2(HP,"최대몸통중심가"); plot3(HM,"최대몸통이평"); } 즐거운 하루되세요 > 지스카드 님이 쓴 글입니다. > 제목 : 도움을 부탁드리겠습니다. > ㅠㅠ 도움을 부탁드립니다. 실행하면 예스트레이더가 다운되버립니다. 분봉차트에서 타주기를 계산합니다. 그 타주기의 가장긴 <양봉>의 <몸통길이>를 배열변수에 모두 담습니다. 그런다음 몸통길이가 가장 긴값의 2분의1지점에 해당하는 가격을 몸통중심가에 담고 싶습니다. 그 가장긴 몸통길이와 몸통중심가를 지표로 표현합니다. (이게 더 큰게 나타나면 갱신되면 좋겠습니다) 마지막으로!! 그 긴 몸통길이의 몸통중심가....의 바<위치>에서, 타주기가 아닌 현재차트주기의 5이평값을 plot3 으로 나타내고 싶습니다. ######## ## 주기 변경용 ###### Input : mm(15) ; var : j(0) , 계산주기(0) ; Array : MinOpen[100](0) , MinHigh[100](0), MinLow[100](0), MinClose[100](0), 몸통길이[100](0),몸통중심가격[100](0) ; If mm >= BarInterval Then { 계산주기 = mm/BarInterval ; } If DayIndex()%계산주기 == 0 Then { For j = 98 DownTo 0 { MinOpen[j+1] = MinOpen[j] ; MinHigh[j+1] = MinHigh[j] ; MinLow[j+1] = MinLow[j] ; MinClose[j+1] = MinClose[j] ; } MinOpen[0] = O ; MinHigh[0] = H ; MinLow[0] = L ; } If MinHigh[0] < H Then MinHigh[0] =H ; If MinLow[0] > L or MinLow[0]==0 Then MinLow[0] = L ; MinClose[0] = C ; // 몸통길이는 종가 -시가 For j = 98 DownTo 0 { 몸통길이[j ] = MinClose[j]-MinOpen[j] ; 몸통중심가격[j] = 몸통길이[j]*0.5 + MinOpen[j] ; } // 몸통길이중 가장긴거를 찾아서 // 몸통중심가격은 중심봉을 반 가르는 가격 Plot1( NthHighest (1, 몸통길이,40) , "몸통의길이") ; // 타주기의 가장긴 몸통 plot2( NthHighest(1,몸통중심가격,40) , "몸통중심가격") ; // plot1 몸통의 가운데 지점 가격 // 추가요청 plot2 지점에서 몸통중심가격에서의 타주기가 아닌 현재차트인( 3분봉의) 5 이평선 수치를 plot3으로 표현하고 싶습니다.
프로필 이미지

지스카드

2019-10-24 13:14:52

아아....지금 너무 신나서 막 웃음이 나옵니다.. 즐거운 하루가 될거 같습니다. 이거 가지고 혼자서 오랜시간 고민했었어도 자력으로는 도저히 결과에 도달하지 못했는데 ㅠ ㅠ 감사합니다. 좋은 하루 되세요 ^^ > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 도움을 부탁드리겠습니다. > 안녕하세요 예스스탁입니다. 1 Plot1( NthHighest (1, 몸통길이,40) , "몸통의길이") ; // 타주기의 가장긴 몸통 plot2( NthHighest(1,몸통중심가격,40) , "몸통중심가격") ; // plot1 몸통의 가운데 지점 가격 배열변수는 변수뒤에 [ ]로 공간번호를 반드시 지정하셔야 합니다. 또한 배열변수를 highest등의 함수에 쓰셔도 해당 0~99의 공간에서 찾는 것은 아닙니다. 2 당일 봉을 몇개씩 구분해서 다른 주기의 값을 계산하는 것은 정확한 방법이 아닙니다. 거래가 많아 거래가 없는 시간대가 없는 종목에서는 유효하지만 거래가 없는 시간대가 생기면 n개씩 구분한 봉으로 타주기의 값을 계산할수 없습니다. 3 input : ntime(15),P(5); var : S1(0),D1(0),TM(0),TF(0),j(0),HR(0),HP(0),HM(0); Array : MinOpen[100](0),MinHigh[100](0),MinLow[100](0),MinClose[100](0), 몸통길이[100](0),몸통중심가격[100](0) ; var1 = ma(C,P); 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; TF = TimeToMinutes(stime)%ntime; if bdate != Bdate[1] or (Bdate == Bdate[1] and TF < TF[1])Then { For j = 98 DownTo 0 { MinOpen[j+1] = MinOpen[j]; MinHigh[j+1] = MinHigh[j]; MinLow[j+1] = MinLow[j]; MinClose[j+1] = MinClose[j]; 몸통길이[j+1] = 몸통길이[j]; 몸통중심가격[j+1] = 몸통중심가격[j]; } MinOpen[0] = O; MinHigh[0] = H; MinLow[0] = L; } If MinHigh[0] > 0 and MinHigh[0] < H Then MinHigh[0] = H ; If MinLow[0] > 0 and MinLow[0] < L Then MinLow[0] = L ; MinClose[0] = C ; 몸통길이[0] = MinClose[0]-MinOpen[0] ; 몸통중심가격[0] = (MinClose[0]+MinOpen[0])/2; HR = 몸통길이[0]; HP = 몸통중심가격[0]; HM = var1; For j = 1 to 99 { if 몸통길이[j] > HR Then { HR = 몸통길이[j]; HP = 몸통중심가격[j]; HM = var1[j]; } } plot1(HR,"최대몸통길이"); plot2(HP,"최대몸통중심가"); plot3(HM,"최대몸통이평"); } 즐거운 하루되세요 > 지스카드 님이 쓴 글입니다. > 제목 : 도움을 부탁드리겠습니다. > ㅠㅠ 도움을 부탁드립니다. 실행하면 예스트레이더가 다운되버립니다. 분봉차트에서 타주기를 계산합니다. 그 타주기의 가장긴 <양봉>의 <몸통길이>를 배열변수에 모두 담습니다. 그런다음 몸통길이가 가장 긴값의 2분의1지점에 해당하는 가격을 몸통중심가에 담고 싶습니다. 그 가장긴 몸통길이와 몸통중심가를 지표로 표현합니다. (이게 더 큰게 나타나면 갱신되면 좋겠습니다) 마지막으로!! 그 긴 몸통길이의 몸통중심가....의 바<위치>에서, 타주기가 아닌 현재차트주기의 5이평값을 plot3 으로 나타내고 싶습니다. ######## ## 주기 변경용 ###### Input : mm(15) ; var : j(0) , 계산주기(0) ; Array : MinOpen[100](0) , MinHigh[100](0), MinLow[100](0), MinClose[100](0), 몸통길이[100](0),몸통중심가격[100](0) ; If mm >= BarInterval Then { 계산주기 = mm/BarInterval ; } If DayIndex()%계산주기 == 0 Then { For j = 98 DownTo 0 { MinOpen[j+1] = MinOpen[j] ; MinHigh[j+1] = MinHigh[j] ; MinLow[j+1] = MinLow[j] ; MinClose[j+1] = MinClose[j] ; } MinOpen[0] = O ; MinHigh[0] = H ; MinLow[0] = L ; } If MinHigh[0] < H Then MinHigh[0] =H ; If MinLow[0] > L or MinLow[0]==0 Then MinLow[0] = L ; MinClose[0] = C ; // 몸통길이는 종가 -시가 For j = 98 DownTo 0 { 몸통길이[j ] = MinClose[j]-MinOpen[j] ; 몸통중심가격[j] = 몸통길이[j]*0.5 + MinOpen[j] ; } // 몸통길이중 가장긴거를 찾아서 // 몸통중심가격은 중심봉을 반 가르는 가격 Plot1( NthHighest (1, 몸통길이,40) , "몸통의길이") ; // 타주기의 가장긴 몸통 plot2( NthHighest(1,몸통중심가격,40) , "몸통중심가격") ; // plot1 몸통의 가운데 지점 가격 // 추가요청 plot2 지점에서 몸통중심가격에서의 타주기가 아닌 현재차트인( 3분봉의) 5 이평선 수치를 plot3으로 표현하고 싶습니다.