커뮤니티

사용자함수를 읽어 올수 있는지요?

프로필 이미지
풍경
2016-01-04 23:08:32
1551
글번호 223760
답변완료
YesLanguage 편집기에서 만든 만기일 사용자 함수를 불러 와서 만기일의 청산시간을 따로 설정할 수 있는지요? 예스랭귀지에서는 간단하게 if MANGI Then setstopendofday(143000); Else setstopendofday(150000); 이라고 쉽게 사용자함수를 읽어서 처리했는데 스팟에서는 어떻게 응용해야 할지 모르겠네요. 아래는 만기일 사용자함수 입니다. If Date == 20151210 || Date == 20150910 || Date == 20150611 || Date == 20150312 Then MANGI = TRUE;Else MANGI = FALSE;
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2016-01-07 17:47:33

안녕하세요 예스스탁입니다. 예스랭귀지와 예스스팟의 랭귀지는 다른언어입니다. 함수가 호환되지는 않습니다. 아래와 같이 작성하셔야 합니다. 만기일은 ||로 계속 연달아 지정하시면 됩니다. 스크립트 객체화면 설정 종목객체 추가, 속성에서 객체명은 MarketData1, 주문종목으로 지정 계좌객체 추가, 속성에서 객체명은 Account1, 계좌번호 지정 function Main_OnStart() { var d = new Date(); var HHMMSS = d.getHours()*10000+d.getMinutes()*100+d.getSeconds(); var YYYYMMDD = d.getFullYear()*10000+(d.getMonth()+1)*100+d.getDate(); //오늘이 지정한 날이면 14시30분 , 아니면 15시 if (YYYYMMDD == 20151210 ||YYYYMMDD == 20150910 || YYYYMMDD == 20150611 || YYYYMMDD == 20150312) Xtime = 143000; else Xtime = 150000; //5초 타이머 셋팅 Main.SetTimer(1, 5000); } function Main_OnTimer(nEventID) { if (nEventID == 1) { var d = new Date(); var HHMMSS = d.getHours()*10000+d.getMinutes()*100+d.getSeconds(); var YYYYMMDD = d.getFullYear()*10000+(d.getMonth()+1)*100+d.getDate(); //Xtime으로 지정한 시간이 넘으면 if (HHMMSS >= Xtime) { //타이머 종료 Main.KillTimer(1); //지정한 종목 잔고셋팅 Account1.SetBalanceItem(Main.GetOrderCode(MarketData1.code), 0) //지정종목의 잔고수량이 1개이상이고 매도포지션이면 //청산하기 위해 잔고수량 전체로 매도5호가 매수주문 if (Account1.Balance.count >= 1 && Account1.Balance.position == 1) { Account1.OrderBuy(Account1.Balance.code,Account1.Balance.count,MarketData1.Ask(5),0); } //지정종목의 잔고수량이 1개이상이고 매수포지션이면 ////청산하기 위해 잔고수량 전체로 매수5호가 매도주문 if (Account1.Balance.count >= 1 && Account1.Balance.position == 1) { Account1.OrderSell(Account1.Balance.code,Account1.Balance.count,MarketData1.Bid(5),0); } } } } 즐거운 하루되세요 > 풍경 님이 쓴 글입니다. > 제목 : 사용자함수를 읽어 올수 있는지요? > YesLanguage 편집기에서 만든 만기일 사용자 함수를 불러 와서 만기일의 청산시간을 따로 설정할 수 있는지요? 예스랭귀지에서는 간단하게 if MANGI Then setstopendofday(143000); Else setstopendofday(150000); 이라고 쉽게 사용자함수를 읽어서 처리했는데 스팟에서는 어떻게 응용해야 할지 모르겠네요. 아래는 만기일 사용자함수 입니다. If Date == 20151210 || Date == 20150910 || Date == 20150611 || Date == 20150312 Then MANGI = TRUE;Else MANGI = FALSE;