커뮤니티

늘 감사합니다.

프로필 이미지
묘선낭자
2013-05-20 01:30:42
231
글번호 63320
답변완료
늘 감사합니다. 1. "어떤봉의 종가가 앞봉의 시가와 종가 사이에 있다면 그 봉(종가)은 없는 것으로 간주, 비교대상에서 제외. (예를 들어 1분봉차트라 가정하면 10시4분봉부터 10시12분봉까지의 종가가 (자기들끼리는 서로 오르내리면서도) 모두 10시3분봉의 시가와 종가 사이에서 끝났다면, 10시4분봉부터 10시12분봉까지는 없는 봉으로 간주, 그봉들의 종가는 제외한다는 뜻입니다.)" 이렇게 해서 무시되는 종가를 제외하고 살아남은 종가만 연결한 선그래프가 있다고 가정하면 var1=고점변곡중 가장 마지막 고점변곡의 고점(종가) var2=저점변곡중 가장 마지막 저점변곡의 저점(종가) var3=고점변곡중 마지막에서 2번째 고점변곡의 고점(종가) var4=저접변곡중 마지막에서 2번째 저점변곡의 저점(종가) (당일봉뿐만 아니라 전일의 봉들도 포함하여 계산) 여기까지를 시스템식으로 부탁드립니다. 2. 30395-2관련질의입니다.(오버나잇 전제=전일봉들도 포함해서 계산) 답주신 내용의 윗부분은 그대로 옮기고 조건문을 아래와 같이 달아봤더니 검증을 통과하지 못하네요. 어떤 부분이 잘못된 건지... 구현하고자 하는 내용은 매수조건 : 본그래프가 i1>i2이고 ma(C,10)>Dnchennel1인 상태에서 종가와 중간값의 지수10이평이 단순10이평보다 둘다 위에 있게 되는 10이평선저점변곡이 2번째 일어났을 때 (또는) Data2그래프가 ii1>ii2이고 이하동문(모두 Data2의 값임)일 때 If countif(i1>i2 and ma(C,10)>Dbchennel1 and ((ema(Medianprice,10)>ma(Medianprice,10) and crossup(ema(C,10),ma(C,10)) or (ema(C,10)>ma(C,10) and crossup(ema(Medianprice,10),ma(Medianprice,10))) or data2(countif(ii1>ii2 and ma(C,10)>Dbchennel1 and ((ema(Medianprice,10)>ma(Medianprice,10) and crossup(ema(C,10),ma(C,10)) or (ema(C,10)>ma(C,10) and crossup(ema(Medianprice,10),ma(Medianprice,10))) Then Buy(); 3. 30395-1관련질의입니다.(오버나잇 전제=전일봉들도 포함해서 계산) 주신 답변이 "어떤봉의 종가가 앞봉의 시가와 종가 사이에 있다면 그 봉(종가)은 없는 것으로 간 주, 비교대상에서 제외. (예를 들어 1분봉차트라 가정하면 10시4분봉부터 10시12분봉까지의 종가가 모두 10시3분봉의 시가와 종가 사이에서 끝났다면, 10시4분봉부터 10시12분봉까지는 없는 봉으로 간주, 그 봉들은 카운트에서 제외한다는 뜻입니다.)" 이렇게 해서 무시되는 종가를 제외하고 살아남은 종가만 가지고, 뒤섞여있는 양음봉 속에서 음봉만 7개를 골라 그 종가끼리 비교해서 종가가 가장 낮은 봉의 최고가를 현재봉종가가 뚫으면 매수, 양봉만 7개를 추려 그 종가끼리 비교해서 그중 종가가 가장 높은 봉의 최저가를 현재봉종가가 밑돌면 매도" 이런 내용이 맞지요? 여기서 제가 7개봉중이라고 했는데 최적화를 위해 n개봉으로 표현할 수도 있나요? 가능하다면 그때의 시스템식은? 감사합니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2013-05-20 11:24:48

안녕하세요 예스스탁입니다. 1. if index == 0 Then{ value1 = C; value2 = O; } if index > 0 and (C > max(value1,value2) or C < min(value1,value2)) Then{ value1 = C; value2 = O; } if value1 > value1[1] Then value3 = 1; if value1 < value1[1] Then value3 = -1; #하락전환 if value3 == -1 and value3[1] != -1 then{ var1 = value1; var2 = var1[1]; } #상승전환 if value3 == 1 and value3[1] != 1 then{ var2 = value1; var4 = var2[1]; } 2. countif는 countif(조건,봉수) 입니다. 작성하신 내용에서는 봉수가 지정이 되어 있지 않습니다. input : N(10); var : i1(0),i2(0),Dbchennel1(0),ii1(0),ii2(0),Dbchennel2(0); If data1(countif(i1>i2 and ma(C,10)>Dbchennel1 and ((ema(Medianprice,10)>ma(Medianprice,10) and crossup(ema(C,10),ma(C,10))) or (ema(C,10)>ma(C,10) and crossup(ema(Medianprice,10),ma(Medianprice,10)))),N) >= 2) or data2(countif(ii1>ii2 and ma(C,10)>Dbchennel1 and ((ema(Medianprice,10)>ma(Medianprice,10) and crossup(ema(C,10),ma(C,10))) or (ema(C,10)>ma(C,10) and crossup(ema(Medianprice,10),ma(Medianprice,10)))),N) >= 2) then Buy(); 3. input : N(6); var : cnt(0),LowBB(0),LowBH(0),HighRB(0),HighRL(0); Array : BB[100](0),BH[100](0),RB[100](0),RL[100](0); if index == 0 Then{ value1 = C; value2 = O; } if index > 0 and (C > max(value1,value2) or C < min(value1,value2)) Then{ value1 = C; value2 = O; if C < O Then{ BB[0] = C; BH[0] = H; var1 = var1+1; for cnt = 1 to N{ BB[cnt] = BB[cnt-1][1]; BH[cnt] = BH[cnt-1][1]; } } if C > O Then{ RB[0] = C; RL[0] = L; var2 = var2+1; for cnt = 1 to N{ RB[cnt] = RB[cnt-1][1]; RL[cnt] = RL[cnt-1][1]; } } } LowBB = BB[0]; lowBH = BH[0]; HighRB = RB[0]; HighRL = RL[0]; for cnt = 0 to N { if BB[cnt] < LowBB Then{ LowBB = BB[cnt]; LowBH = BH[cnt]; } if RB[cnt] > HighRB Then{ HighRB = RB[cnt]; HighRL = RL[cnt]; } } if MarketPosition == 1 and C > O and var1 >= 7 and C > LowBH Then ExitShort("sx"); if MarketPosition == 0 and IsExitName("sx",1) == true and C < ExitPrice(1) Then buy(); if MarketPosition == 1 and C < O and var2 >= 7 and C < HighRL Then ExitLong("bx"); if MarketPosition == 0 and IsExitName("bx",1) == true and C > ExitPrice(1) Then sell(); 즐거운 하루되세요 > 묘선낭자 님이 쓴 글입니다. > 제목 : 늘 감사합니다. > 늘 감사합니다. 1. "어떤봉의 종가가 앞봉의 시가와 종가 사이에 있다면 그 봉(종가)은 없는 것으로 간주, 비교대상에서 제외. (예를 들어 1분봉차트라 가정하면 10시4분봉부터 10시12분봉까지의 종가가 (자기들끼리는 서로 오르내리면서도) 모두 10시3분봉의 시가와 종가 사이에서 끝났다면, 10시4분봉부터 10시12분봉까지는 없는 봉으로 간주, 그봉들의 종가는 제외한다는 뜻입니다.)" 이렇게 해서 무시되는 종가를 제외하고 살아남은 종가만 연결한 선그래프가 있다고 가정하면 var1=고점변곡중 가장 마지막 고점변곡의 고점(종가) var2=저점변곡중 가장 마지막 저점변곡의 저점(종가) var3=고점변곡중 마지막에서 2번째 고점변곡의 고점(종가) var4=저접변곡중 마지막에서 2번째 저점변곡의 저점(종가) (당일봉뿐만 아니라 전일의 봉들도 포함하여 계산) 여기까지를 시스템식으로 부탁드립니다. 2. 30395-2관련질의입니다.(오버나잇 전제=전일봉들도 포함해서 계산) 답주신 내용의 윗부분은 그대로 옮기고 조건문을 아래와 같이 달아봤더니 검증을 통과하지 못하네요. 어떤 부분이 잘못된 건지... 구현하고자 하는 내용은 매수조건 : 본그래프가 i1>i2이고 ma(C,10)>Dnchennel1인 상태에서 종가와 중간값의 지수10이평이 단순10이평보다 둘다 위에 있게 되는 10이평선저점변곡이 2번째 일어났을 때 (또는) Data2그래프가 ii1>ii2이고 이하동문(모두 Data2의 값임)일 때 If countif(i1>i2 and ma(C,10)>Dbchennel1 and ((ema(Medianprice,10)>ma(Medianprice,10) and crossup(ema(C,10),ma(C,10)) or (ema(C,10)>ma(C,10) and crossup(ema(Medianprice,10),ma(Medianprice,10))) or data2(countif(ii1>ii2 and ma(C,10)>Dbchennel1 and ((ema(Medianprice,10)>ma(Medianprice,10) and crossup(ema(C,10),ma(C,10)) or (ema(C,10)>ma(C,10) and crossup(ema(Medianprice,10),ma(Medianprice,10))) Then Buy(); 3. 30395-1관련질의입니다.(오버나잇 전제=전일봉들도 포함해서 계산) 주신 답변이 "어떤봉의 종가가 앞봉의 시가와 종가 사이에 있다면 그 봉(종가)은 없는 것으로 간 주, 비교대상에서 제외. (예를 들어 1분봉차트라 가정하면 10시4분봉부터 10시12분봉까지의 종가가 모두 10시3분봉의 시가와 종가 사이에서 끝났다면, 10시4분봉부터 10시12분봉까지는 없는 봉으로 간주, 그 봉들은 카운트에서 제외한다는 뜻입니다.)" 이렇게 해서 무시되는 종가를 제외하고 살아남은 종가만 가지고, 뒤섞여있는 양음봉 속에서 음봉만 7개를 골라 그 종가끼리 비교해서 종가가 가장 낮은 봉의 최고가를 현재봉종가가 뚫으면 매수, 양봉만 7개를 추려 그 종가끼리 비교해서 그중 종가가 가장 높은 봉의 최저가를 현재봉종가가 밑돌면 매도" 이런 내용이 맞지요? 여기서 제가 7개봉중이라고 했는데 최적화를 위해 n개봉으로 표현할 수도 있나요? 가능하다면 그때의 시스템식은? 감사합니다.