커뮤니티

확장차트 객체 식별 방법 또는 먼저 생성된 객체 삭제 방법

프로필 이미지
richon
2021-03-11 13:23:04
2693
글번호 225445
답변완료
안녕하세요. 확장차트를 이용하여 신호를 발생시킵니다. 1번의 매수/청산이 완료된 이후 포지션이 없는 상태에서 가격이 많이 움직인 경우 종목을 변경하여 신규로 매매를 하려고 합니다. 그래서 기존의 확장 차트를 삭제하거나 확장 차트 삭제가 안되는 경우 신규로 확장 차트를 만들어 2개를 구분할 수 있는 방법이 있는지 문의 드립니다. 감사합니다.
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2021-04-06 17:55:33

안녕하세요 예스스탁입니다. 확장차트객체는 Main.RemoveObject(Object)함수로 삭제하시면 됩니다. 다만 차트객체의 특성상 차트가 만들어지고 지정한 지표나 시스템이 적용중일수 있으므로 해당 이벤트에서 바로 삭제가 되지 않을수 있습니다. 차트객체 삭제시에 차트객체가 생성된 이벤트(function Main_OnRcvChartEx(ChartEx))에서 바로 삭제하지 마시고 다른 이벤트에서 삭제해주셔야 합니다. 즉 생성후 특정값 확인하고 바로 삭제시에 아래와 같이 타이머 설정해서 n초뒤에 삭제하게 코딩해 주셔야 합니다. var chart; function Main_OnStart() { //차트설정(연결선물,20틱,봉수 5000개,갭보정안함,수정주가처리안함) var ChartSet = new ReqChartItem("00000000",20,CHART_PERIOD_TICK,5000,CHART_REQCOUNT_BAR,false,false); Main.ReqChartEx(ChartSet); } //차트객체 생성 function Main_OnRcvChartEx(ChartEx) { chart = ChartEx; Main.SetTimer(1, 1000); } //다른이벤트에서 삭제 function Main_OnTimer(nEventID) { Main.KillTimer(1); Main.RemoveObject(chart); } 즐거운 하루되세요 > richon 님이 쓴 글입니다. > 제목 : 확장차트 객체 식별 방법 또는 먼저 생성된 객체 삭제 방법 > 안녕하세요. 확장차트를 이용하여 신호를 발생시킵니다. 1번의 매수/청산이 완료된 이후 포지션이 없는 상태에서 가격이 많이 움직인 경우 종목을 변경하여 신규로 매매를 하려고 합니다. 그래서 기존의 확장 차트를 삭제하거나 확장 차트 삭제가 안되는 경우 신규로 확장 차트를 만들어 2개를 구분할 수 있는 방법이 있는지 문의 드립니다. 감사합니다.