커뮤니티

부탁드립니다...^^

프로필 이미지
bbcc
2013-07-02 23:45:59
218
글번호 64945
답변완료
아래 data1의 수식을 data2로 수식 변경하는 법 알려주세요 워락 초보이다 보니 도저히 모르겠네요..^^ 1.갭보정 안한 식 2.갭보정 한 식 으로 data2로 둘다 변경해주세요 input:단위호가(5),단기(5),중기(20); var:j(0),벽돌크기(0),벽돌개수(0),방향(0),단기이평(0),중기이평(0),단기가중이평(0),중기가중이평(0), 상승(1),하락(-1),Sum(0),CSum(0); array:고[10](0),저[10](0),렌코[500](0); if index == 0 then { 방향 = 0; 벽돌크기 = PriceScale * 단위호가; 고[0] = C; 저[0] = C; 렌코[0] = C; } #==========================================# # 렌코 계산 #==========================================# if 방향 == 0 then { if 저[0] - 벽돌크기 >= C then { 벽돌개수 = int((저[0]-C)/벽돌크기); 저[0] = 저[0] - 벽돌크기 * 벽돌개수; 방향 = 하락; for j = 499 downto 벽돌개수 { 렌코[j] = 렌코[j-벽돌개수]; } for j = 벽돌개수 - 1 downto 0 { 렌코[j] = 렌코[j+1] - 벽돌크기; } } else if 고[0] + 벽돌크기 <= C then { 벽돌개수 = int((C-고[0])/벽돌크기); 고[0] = 고[0] + 벽돌크기 * 벽돌개수; 방향 = 상승; for j = 499 downto 벽돌개수 { 렌코[j] = 렌코[j-벽돌개수]; } for j = 벽돌개수 - 1 downto 0 { 렌코[j] = 렌코[j+1] + 벽돌크기; } } } else if 방향 == 하락 then { if 저[0] - 벽돌크기 >= C then { 벽돌개수 = int((저[0]-C)/벽돌크기); 저[0] = 저[0] - 벽돌크기 * 벽돌개수; for j = 499 downto 벽돌개수 { 렌코[j] = 렌코[j-벽돌개수]; } for j = 벽돌개수 - 1 downto 0 { 렌코[j] = 렌코[j+1] - 벽돌크기; } } if 저[0] + 2*벽돌크기 <= C then { for j = 8 downto 0 { 고[j+1] = 고[j]; } 방향 = 상승; 벽돌개수 = int((C-저[0])/벽돌크기); 고[0] = 저[0] + 벽돌크기 * 벽돌개수; for j = 499 downto (벽돌개수-1) { 렌코[j] = 렌코[j-(벽돌개수-1)]; } 렌코[벽돌개수-2] = 렌코[벽돌개수-1] + 2*벽돌크기; if 벽돌개수 > 2 then { for j = 벽돌개수 - 3 downto 0 { 렌코[j] = 렌코[j+1] + 벽돌크기; } } } } else if 방향 == 상승 then { if 고[0] + 벽돌크기 <= C then { 벽돌개수 = int((C-고[0])/벽돌크기); 고[0] = 고[0] + 벽돌크기 * 벽돌개수; for j = 499 downto 벽돌개수 { 렌코[j] = 렌코[j-벽돌개수]; } for j = 벽돌개수 - 1 downto 0 { 렌코[j] = 렌코[j+1] + 벽돌크기; } } if 고[0] - 2*벽돌크기 >= C then { for j = 8 downto 0 { 저[j+1] = 저[j]; } 방향 = 하락; 벽돌개수 = int((고[0]-C)/벽돌크기); 저[0] = 고[0] - 벽돌크기 * 벽돌개수; for j = 499 downto (벽돌개수-1) { 렌코[j] = 렌코[j-(벽돌개수-1)]; } 렌코[벽돌개수-2] = 렌코[벽돌개수-1] - 2*벽돌크기; if 벽돌개수 > 2 then { for j = 벽돌개수 - 3 downto 0 { 렌코[j] = 렌코[j+1] - 벽돌크기; } } } } #==========================================# # 렌코 (가중)이평계산 #==========================================# Sum = 0; for j = 0 to (단기-1) { Sum = Sum + 렌코[j]; } 단기이평 = Sum / 단기; Sum = 0; for j = 0 to (중기-1) { Sum = Sum + 렌코[j]; } 중기이평 = Sum / 중기; Sum = 0; CSum = 0; for j = 0 to (단기-1) { Sum = Sum + 렌코[j] * (단기 - j); CSum = CSum + (단기 - j); } 단기가중이평 = Sum / CSum; Sum = 0; CSum = 0; for j = 0 to (중기-1) { Sum = Sum + 렌코[j] * (중기 - j); CSum = CSum + (중기 - j); } 중기가중이평 = Sum / CSum; #==========================================# # 지표식 출력 #==========================================# if 방향[1]==하락 and 방향==상승 then plot1(저[0],"렌코차트",Blue); //선그래프 if 방향[1]==상승 and 방향==하락 then plot1(고[0],"렌코차트",RED); //선그래프 plot2(렌코[0],"렌코값",iff(방향==상승,RED,BLUE)); //선그래프
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2013-07-03 15:41:26

안녕하세요 예스스탁입니다. input : 단위호가(5),단기(5),중기(20); var : j(0,data2),벽돌크기(0,data2),벽돌개수(0,data2),방향(0,data2); var : 단기이평(0,data2),중기이평(0,data2),단기가중이평(0,data2),중기가중이평(0,data2); var : 상승(1),하락(-1),Sum(0),CSum(0); array:고[10](0,data2),저[10](0,data2),렌코[500](0,data2); var : gap(0,data2),sumgap(0,data2),GC(0,data2); if data2(date!=date[1]) THen { // 날짜가 변경되는 봉에서(분봉에서 첫번째 봉) gap = data2(Open-Close[1]); // 일간갭 sumGap = sumGap+gap; // 일간갭 누적 } GC = data2(C) - sumGap; // 갭보정 종가 if data2(index == 0) then { 방향 = 0; 벽돌크기 = data2(PriceScale * 단위호가); 고[0] = data2(GC); 저[0] = data2(GC); 렌코[0] = data2(GC); } #==========================================# # 렌코 계산 #==========================================# if 방향 == 0 then { if 저[0] - 벽돌크기 >= data2(GC) then { 벽돌개수 = data2(int((저[0]-GC)/벽돌크기)); 저[0] = data2(저[0] - 벽돌크기 * 벽돌개수); 방향 = 하락; for j = 499 downto 벽돌개수 { 렌코[j] = 렌코[j-벽돌개수]; } for j = 벽돌개수 - 1 downto 0 { 렌코[j] = 렌코[j+1] - 벽돌크기; } } else if 고[0] + 벽돌크기 <= data2(GC) then { 벽돌개수 = data2(int((GC-고[0])/벽돌크기)); 고[0] = 고[0] + 벽돌크기 * 벽돌개수; 방향 = 상승; for j = 499 downto 벽돌개수 { 렌코[j] = 렌코[j-벽돌개수]; } for j = 벽돌개수 - 1 downto 0 { 렌코[j] = 렌코[j+1] + 벽돌크기; } } } else if 방향 == 하락 then { if 저[0] - 벽돌크기 >= data2(GC) then { 벽돌개수 = data2(int((저[0]-GC)/벽돌크기)); 저[0] = 저[0] - 벽돌크기 * 벽돌개수; for j = 499 downto 벽돌개수 { 렌코[j] = 렌코[j-벽돌개수]; } for j = 벽돌개수 - 1 downto 0 { 렌코[j] = 렌코[j+1] - 벽돌크기; } } if 저[0] + 2*벽돌크기 <= data2(GC) then { for j = 8 downto 0 { 고[j+1] = 고[j]; } 방향 = 상승; 벽돌개수 = data2(int((GC-저[0])/벽돌크기)); 고[0] = 저[0] + 벽돌크기 * 벽돌개수; for j = 499 downto (벽돌개수-1) { 렌코[j] = 렌코[j-(벽돌개수-1)]; } 렌코[벽돌개수-2] = 렌코[벽돌개수-1] + 2*벽돌크기; if 벽돌개수 > 2 then { for j = 벽돌개수 - 3 downto 0 { 렌코[j] = 렌코[j+1] + 벽돌크기; } } } } else if 방향 == 상승 then { if 고[0] + 벽돌크기 <= data2(GC) then { 벽돌개수 = data2(int((GC-고[0])/벽돌크기)); 고[0] = 고[0] + 벽돌크기 * 벽돌개수; for j = 499 downto 벽돌개수 { 렌코[j] = 렌코[j-벽돌개수]; } for j = 벽돌개수 - 1 downto 0 { 렌코[j] = 렌코[j+1] + 벽돌크기; } } if 고[0] - 2*벽돌크기 >= data2(GC) then { for j = 8 downto 0 { 저[j+1] = 저[j]; } 방향 = 하락; 벽돌개수 = data2(int((고[0]-GC)/벽돌크기)); 저[0] = 고[0] - 벽돌크기 * 벽돌개수; for j = 499 downto (벽돌개수-1) { 렌코[j] = 렌코[j-(벽돌개수-1)]; } 렌코[벽돌개수-2] = 렌코[벽돌개수-1] - 2*벽돌크기; if 벽돌개수 > 2 then { for j = 벽돌개수 - 3 downto 0 { 렌코[j] = 렌코[j+1] - 벽돌크기; } } } } #==========================================# # 렌코 (가중)이평계산 #==========================================# Sum = 0; for j = 0 to (단기-1) { Sum = Sum + 렌코[j]; } 단기이평 = Sum / 단기; Sum = 0; for j = 0 to (중기-1) { Sum = Sum + 렌코[j]; } 중기이평 = Sum / 중기; Sum = 0; CSum = 0; for j = 0 to (단기-1) { Sum = Sum + 렌코[j] * (단기 - j); CSum = CSum + (단기 - j); } 단기가중이평 = Sum / CSum; Sum = 0; CSum = 0; for j = 0 to (중기-1) { Sum = Sum + 렌코[j] * (중기 - j); CSum = CSum + (중기 - j); } 중기가중이평 = Sum / CSum; #==========================================# # 지표식 출력 #==========================================# if 방향[1]==하락 and 방향==상승 then plot1(저[0],"렌코차트",Blue); //선그래프 if 방향[1]==상승 and 방향==하락 then plot1(고[0],"렌코차트",RED); //선그래프 plot2(렌코[0],"렌코값",iff(방향==상승,RED,BLUE)); //선그래프 수식은 차트의 데이터를 사용하므로 기본차트속성에서 갭보정에 체크하시면 됩니다. 즐거운 하루되세요 > bbcc 님이 쓴 글입니다. > 제목 : 부탁드립니다...^^ > 아래 data1의 수식을 data2로 수식 변경하는 법 알려주세요 워락 초보이다 보니 도저히 모르겠네요..^^ 1.갭보정 안한 식 2.갭보정 한 식 으로 data2로 둘다 변경해주세요 input:단위호가(5),단기(5),중기(20); var:j(0),벽돌크기(0),벽돌개수(0),방향(0),단기이평(0),중기이평(0),단기가중이평(0),중기가중이평(0), 상승(1),하락(-1),Sum(0),CSum(0); array:고[10](0),저[10](0),렌코[500](0); if index == 0 then { 방향 = 0; 벽돌크기 = PriceScale * 단위호가; 고[0] = C; 저[0] = C; 렌코[0] = C; } #==========================================# # 렌코 계산 #==========================================# if 방향 == 0 then { if 저[0] - 벽돌크기 >= C then { 벽돌개수 = int((저[0]-C)/벽돌크기); 저[0] = 저[0] - 벽돌크기 * 벽돌개수; 방향 = 하락; for j = 499 downto 벽돌개수 { 렌코[j] = 렌코[j-벽돌개수]; } for j = 벽돌개수 - 1 downto 0 { 렌코[j] = 렌코[j+1] - 벽돌크기; } } else if 고[0] + 벽돌크기 <= C then { 벽돌개수 = int((C-고[0])/벽돌크기); 고[0] = 고[0] + 벽돌크기 * 벽돌개수; 방향 = 상승; for j = 499 downto 벽돌개수 { 렌코[j] = 렌코[j-벽돌개수]; } for j = 벽돌개수 - 1 downto 0 { 렌코[j] = 렌코[j+1] + 벽돌크기; } } } else if 방향 == 하락 then { if 저[0] - 벽돌크기 >= C then { 벽돌개수 = int((저[0]-C)/벽돌크기); 저[0] = 저[0] - 벽돌크기 * 벽돌개수; for j = 499 downto 벽돌개수 { 렌코[j] = 렌코[j-벽돌개수]; } for j = 벽돌개수 - 1 downto 0 { 렌코[j] = 렌코[j+1] - 벽돌크기; } } if 저[0] + 2*벽돌크기 <= C then { for j = 8 downto 0 { 고[j+1] = 고[j]; } 방향 = 상승; 벽돌개수 = int((C-저[0])/벽돌크기); 고[0] = 저[0] + 벽돌크기 * 벽돌개수; for j = 499 downto (벽돌개수-1) { 렌코[j] = 렌코[j-(벽돌개수-1)]; } 렌코[벽돌개수-2] = 렌코[벽돌개수-1] + 2*벽돌크기; if 벽돌개수 > 2 then { for j = 벽돌개수 - 3 downto 0 { 렌코[j] = 렌코[j+1] + 벽돌크기; } } } } else if 방향 == 상승 then { if 고[0] + 벽돌크기 <= C then { 벽돌개수 = int((C-고[0])/벽돌크기); 고[0] = 고[0] + 벽돌크기 * 벽돌개수; for j = 499 downto 벽돌개수 { 렌코[j] = 렌코[j-벽돌개수]; } for j = 벽돌개수 - 1 downto 0 { 렌코[j] = 렌코[j+1] + 벽돌크기; } } if 고[0] - 2*벽돌크기 >= C then { for j = 8 downto 0 { 저[j+1] = 저[j]; } 방향 = 하락; 벽돌개수 = int((고[0]-C)/벽돌크기); 저[0] = 고[0] - 벽돌크기 * 벽돌개수; for j = 499 downto (벽돌개수-1) { 렌코[j] = 렌코[j-(벽돌개수-1)]; } 렌코[벽돌개수-2] = 렌코[벽돌개수-1] - 2*벽돌크기; if 벽돌개수 > 2 then { for j = 벽돌개수 - 3 downto 0 { 렌코[j] = 렌코[j+1] - 벽돌크기; } } } } #==========================================# # 렌코 (가중)이평계산 #==========================================# Sum = 0; for j = 0 to (단기-1) { Sum = Sum + 렌코[j]; } 단기이평 = Sum / 단기; Sum = 0; for j = 0 to (중기-1) { Sum = Sum + 렌코[j]; } 중기이평 = Sum / 중기; Sum = 0; CSum = 0; for j = 0 to (단기-1) { Sum = Sum + 렌코[j] * (단기 - j); CSum = CSum + (단기 - j); } 단기가중이평 = Sum / CSum; Sum = 0; CSum = 0; for j = 0 to (중기-1) { Sum = Sum + 렌코[j] * (중기 - j); CSum = CSum + (중기 - j); } 중기가중이평 = Sum / CSum; #==========================================# # 지표식 출력 #==========================================# if 방향[1]==하락 and 방향==상승 then plot1(저[0],"렌코차트",Blue); //선그래프 if 방향[1]==상승 and 방향==하락 then plot1(고[0],"렌코차트",RED); //선그래프 plot2(렌코[0],"렌코값",iff(방향==상승,RED,BLUE)); //선그래프