커뮤니티
시스템 출력이 이런 오류가 있네요
2012-12-29 11:45:40
230
글번호 57685
var1=ma(c,5);
if crossup(c,var1) Then
buy("b1");
if crossdown(c,var1) Then
exitlong("b1_ex");
if crossup(c,var1) Then
buy("b2");
if crossdown(c,var1) Then
exitlong("b2_ex");
이런 시스템 식에 대하여,
피라미딩을 서로 다른신호에 적용 혹은 모든 신호 적용으로 바꾸고 실행시킬때
챠트에 그림처럼 표시됩니다.
이렇게 해 본 이유는 비슷하게 두 가지의 진입과 청산을 갖는
시스템을 실행시, 청산위치가 같은 지점에 발생하면
두번째 매수 조건이 청산되어야 하는데
조건이 충족되어도 청산이 안되는 현상이 나타납니다.
그래서 1개를 청산을 못 시키고, 계속 잔고를 물고 가네요
프로그램 내부의 버그 같습니다.
수정바랍니다.
- 1. test_j.JPG (0.11 MB)
답변 1
예스스탁 예스스탁 답변
2013-01-02 11:12:27
안녕하세요
예스스탁입니다.
해당 내용은 버그가 아닙니다.
작성하신 식은 진입별로 따로 청산하는 식이 아닙니다.
청산은 따로 수량이나 진입명을 지정하지 않으면 일괄청산입니다.
동일한 봉에 2가지이상 조건이 만족하면
먼저 기술된 청산으로 모두 청산이 되게 됩니다.
청산신호에 0이 표시된 것이 진입분을 모두 청산하고 수량이 0이 된것을 나타냅니다.
각 진입별로 따로 청산하고자 하시면 아래와 같이
청산함수에 진입명을 지정해 주시면 됩니다.
var1=ma(c,5);
if crossup(c,var1) Then
buy("b1");
if crossdown(c,var1) Then
exitlong("b1_ex",OnClose,def,"b1");
if crossup(c,var1) Then
buy("b2");
if crossdown(c,var1) Then
exitlong("b2_ex",OnClose,def,"b2");
즐거운 하루되세요
> 선행 님이 쓴 글입니다.
> 제목 : 시스템 출력이 이런 오류가 있네요
> var1=ma(c,5);
if crossup(c,var1) Then
buy("b1");
if crossdown(c,var1) Then
exitlong("b1_ex");
if crossup(c,var1) Then
buy("b2");
if crossdown(c,var1) Then
exitlong("b2_ex");
이런 시스템 식에 대하여,
피라미딩을 서로 다른신호에 적용 혹은 모든 신호 적용으로 바꾸고 실행시킬때
챠트에 그림처럼 표시됩니다.
이렇게 해 본 이유는 비슷하게 두 가지의 진입과 청산을 갖는
시스템을 실행시, 청산위치가 같은 지점에 발생하면
두번째 매수 조건이 청산되어야 하는데
조건이 충족되어도 청산이 안되는 현상이 나타납니다.
그래서 1개를 청산을 못 시키고, 계속 잔고를 물고 가네요
프로그램 내부의 버그 같습니다.
수정바랍니다.
다음글
이전글