커뮤니티

프로그램 사용법 Q&A

글쓰기
답변완료

매매

옵션매매할때 자동매매 해보니까 주문가능수량 확인 하면 매도 가능수량 12개 매수 가능 수량 280개 주문가능액수가 나옵니다 그런데 자동매매 주문 설정을 12개로입력 했는데 시장에서 24개 주문 들어가네요 양방향 매매에서 있었던일입니다 좀 혼란 스러웠습니다 주문 가능 수량 조회 하면 매도 가능수량이 12개로 나왔습니다만 실재로 매매해보니 12개입력했는데 24개가 주문 들어가네요 뭐가뭔지 정확히좀 알아야겠습니다 답변 이곳 감사합니다
프로필 이미지
회원
2007-08-03
1567
글번호 200376
예스트레이더 (iM증권)
답변완료

하나의 봉에 매수, 청산 동시에 뜰 경우

이것을 막을 방법으로 아래와 같이 답변해 주셨는데요, (매수 조건에 청산 조건이 아님을 제시) //매수식 if CrossUp(C,ma(C,20)) and !(CrossDown(C,ma(C,5))) then buy(); //매수청산식 if CrossDown(C,ma(C,5)) then exitlong(); 이걸 이렇게 고치면 안되나요? var1=0; //매수식 if CrossUp(C,ma(C,20)) and var1!=1 then {buy(); var1=0;} //매수청산식 if CrossDown(C,ma(C,5)) and var1=0 then {exitlong(); var1=1;} 답변 부탁 드립니다.
프로필 이미지
도레미트리오
2007-08-02
947
글번호 200375
예스트레이더 (iM증권)
답변완료

시물레이션

안녕하세요 풋220 종목 시물레이션 수수료?와 슬리피지? 얼마로 설정하는건지요 글구 옵션은 유료 시물레이션은 몇년까지 확인할수 있나요 글구 유료 옵션에서는 시물레이션 틱차트 에서 결과을 볼수있나요 제가 소자본인 관계로 틱 을 보고 있어서요
프로필 이미지
회원
2007-08-02
1012
글번호 200371
예스트레이더 (iM증권)
답변완료

리딩스타

리딩스타 트레이딩 타사꺼인가요 계좌도 따로 신청도따로하라는 내용때문에 통합 안되나요 괜히 시간만 빼끼고
프로필 이미지
회원
2007-08-02
1002
글번호 200369
예스트레이더 (iM증권)
답변완료

비스타에서 몇가지 문제점

안녕하세요. 비스타에 3.1베타 사용하는데 서버시간 표시가 안되는것같습니다. 그리고 다른 컴퓨터에서 같은 아이디로 접속했을 시 비스타에서 실행중인 예스트레이더에서 다른 컴퓨터에서 사용자가 로그인했다는 메세지를 보여준후 먹통이 되어버리는군요. 3.1 베타가 빨리 안정화가 되면 좋겠군요. 현재는 상당히 문제가 많습니다.
프로필 이미지
회원
2007-08-02
1145
글번호 200365
예스트레이더 (iM증권)
답변완료

print문의 오류

아래 프로그램에서 state2.txt 로 보면 state가 0,1,2,3 등으로 변하고 있는데 실제 state.txt에는 프린트가 되지 않습니다. 참고로 생성화일은 콜옵션 247.5로 돌린 것 입니다. =============== 프로그램 ============ #선물의 하루 최대 최소 차이점 # Index : 봉의 번호 # sDate : 봉의 시작 날짜 # date : 봉의 끝 날짜 # time : 봉의 끝 시간(103020) 10시30분20초 # Open : 시가 # High : 고가 # Low : 저가 # Close : 종가 # Volume : 거래량 # Money : 거래 대금 # openinterest : 미결제 약정 # Bids : 매수 총잔량 # asks : 매도 총잔량 # ticks : 체결건수 # upticks : 상승형 체결건수 # downticks : 하락형 체결건수 # upvol : 상승형 체결거래량 # downvol : 하락형 체결거래량 # baseprice : 기준가 variables : v_i(0),state(0),v_close(0),rate(0.95),num(1),next_state(0); arrays : av_price[20](0); if(index >2 ) then { state = next_state[1]; next_state = next_state[1]; } print("state2.txt","index = %6.0f state %4.0f close:%2.2f",index,state,close); if(time<90130) then { state = 0; next_state = 0; } if(state==0) then { /* initialization */ if( time > 90130 && date == 20070718 ) then { /* Transition to trading */ next_state = 1; print("state.txt","state %4.0f",state); av_price[0] = Close; For v_i=1 to 19 { av_price[v_i] = av_price[v_i-1]*rate; } For v_i=0 to 19 { /*소수점 두 째 짜리까지로 라운드 */ av_price[v_i] = round(av_price[v_i],2); print("price222.txt","price:%2.2f %.0f %",av_price[v_i],state); } } } else if(state == 1) then { if(close<=av_price[state]) then { /*Transit to next state */ next_state = state+1; print("state.txt","state %4.0f",next_state); buy("b1",Onclose,DEF,num); } if(close>=av_price[state-1]) then { next_state = 1001; print("state.txt","state %4.0f",next_state); } } else if(state == 2) then { if(close<=av_price[state]) then { /*Transit to next state */ next_state = state+1; print("state.txt","state %4.0f",next_state); buy("b2",Onclose,DEF,1); } if(close>=av_price[state-2]) then { next_state = state-1; print("state.txt","state %4.0f",next_state); Exitlong("s2",Onclose,DEF,"b1",num,1); } } else if(state ==3) then { if(close<=av_price[state]) then { /*Transit to next state */ next_state = state+1; print("state.txt","state %4.0f",next_state); buy("b3",Onclose,DEF,num); } if(close>=av_price[state-2]) then { next_state = state-1; print("state.txt","state %4.0f",next_state); Exitlong("s3",Onclose,DEF,"b2",num,1); } } else if(state ==4) then { if(close<=av_price[state]) then { /*Transit to next state */ next_state = state+1; print("state.txt","state %4.0f",next_state); buy("b4",Onclose,DEF,num); } if(close>=av_price[state-2]) then { next_state = state-1; print("state.txt","state %4.0f",next_state); Exitlong("s4",Onclose,DEF,"b3",num,1); } } else if(state ==5) then { if(close<=av_price[state]) then { /*Transit to next state */ next_state =state+1; print("state.txt","state %4.0f",next_state); buy("b5",Onclose,DEF,num); } if(close>=av_price[state-2]) then { next_state =state-1; print("state.txt","state %4.0f",next_state); Exitlong("s5",Onclose,DEF,"b4",num,1); } }else if(state ==6) then { if(close<=av_price[state]) then { /*Transit to next state */ next_state =state+1; print("state.txt","state %4.0f",next_state); buy("b6",Onclose,DEF,num); } if(close>=av_price[state-2]) then { next_state =state-1; print("state.txt","state %4.0f",next_state); Exitlong("s6",Onclose,DEF,"b5",num,1); } }else if(state ==7) then { if(close<=av_price[state]) then { /*Transit to next state */ next_state =state+1; print("state.txt","state %4.0f",next_state); buy("b7",Onclose,DEF,num); } if(close>=av_price[state-2]) then { next_state =state-1; print("state.txt","state %4.0f",next_state); Exitlong("s7",Onclose,DEF,"b6",num,1); } }else if(state ==8) then { if(close<=av_price[state]) then { /*Transit to next state */ next_state =state+1; print("state.txt","state %4.0f",next_state); buy("b8",Onclose,DEF,num); } if(close>=av_price[state-2]) then { next_state =state-1; print("state.txt","state %4.0f",next_state); Exitlong("s8",Onclose,DEF,"b7",num,1); } }else if(state ==9) then { if(close<=av_price[state]) then { /*Transit to next state */ next_state =state+1; print("state.txt","state %4.0f",next_state); buy("b9",Onclose,DEF,num); } if(close>=av_price[state-2]) then { next_state =state-1; print("state.txt","state %4.0f",next_state); Exitlong("s9",Onclose,DEF,"b8",num,1); } }else if(state ==10) then { if(close<=av_price[state]) then { /*Transit to next state */ next_state =state+1; print("state.txt","state %4.0f",next_state); buy("b10",Onclose,DEF,num); } if(close>=av_price[state-2]) then { next_state =state-1; print("state.txt","state %4.0f",next_state); Exitlong("s10",Onclose,DEF,"b9",num,1); } } else if(state ==11) then { if(close<=av_price[state]) then { /*Transit to next state */ next_state =state+1; print("state.txt","state %4.0f",next_state); buy("b11",Onclose,DEF,num); } if(close>=av_price[state-2]) then { next_state =state-1; print("state.txt","state %4.0f",next_state); Exitlong("s11",Onclose,DEF,"b10",num,1); } } else if(state ==12) then { if(close<=av_price[state]) then { /*Transit to next state */ next_state =state+1; print("state.txt","state %4.0f",next_state); buy("b12",Onclose,DEF,num); } if(close>=av_price[state-2]) then { next_state =state-1; print("state.txt","state %4.0f",next_state); Exitlong("s12",Onclose,DEF,"b11",num,1); } } else if(state ==13) then { if(close<=av_price[state]) then { /*Transit to next state */ next_state =state+1; print("state.txt","state %4.0f",next_state); buy("b13",Onclose,DEF,num); } if(close>=av_price[state-2]) then { next_state =state-1; print("state.txt","state %4.0f",next_state); Exitlong("s13",Onclose,DEF,"b12",num,1); } } else if(state ==14) then { if(close<=av_price[state]) then { /*Transit to next state */ next_state =state+1; print("state.txt","state %4.0f",next_state); buy("b14",Onclose,DEF,num); } if(close>=av_price[state-2]) then { next_state =state-1; print("state.txt","state %4.0f",next_state); Exitlong("s14",Onclose,DEF,"b13",num,1); } } else if(state ==15) then { if(close<=av_price[state]) then { /*Transit to next state */ next_state =state+1; print("state.txt","state %4.0f",next_state); buy("b15",Onclose,DEF,num); } if(close>=av_price[state-2]) then { next_state =state-1; print("state.txt","state %4.0f",next_state); Exitlong("s15",Onclose,DEF,"b14",num,1); } } else if(state ==16) then { if(close<=av_price[state]) then { /*Transit to next state */ next_state =state+1; print("state.txt","state %4.0f",next_state); buy("b16",Onclose,DEF,num); } if(close>=av_price[state-2]) then { next_state =state-1; print("state.txt","state %4.0f",next_state); Exitlong("s16",Onclose,DEF,"b15",num,1); } } else if(state ==17) then { if(close<=av_price[state]) then { /*Transit to next state */ next_state =state+1; print("state.txt","state %4.0f",next_state); buy("b17",Onclose,DEF,num); } if(close>=av_price[state-2]) then { next_state =state-1; print("state.txt","state %4.0f",next_state); Exitlong("s17",Onclose,DEF,"b16",num,1); } } else if(state ==18) then { if(close<=av_price[state]) then { /*Transit to next state */ next_state =state+1; print("state.txt","state %4.0f",next_state); buy("b18",Onclose,DEF,num); } if(close>=av_price[state-2]) then { next_state =state-1; print("state.txt","state %4.0f",next_state); Exitlong("s18",Onclose,DEF,"b17",num,1); } } else if(state ==19) then { /* if(close<=av_price[state]) then { next_state = state+1; print("state.txt","state %4.0f",next_state); buy(1); }*/ if(close>=av_price[state-2]) then { next_state = state-1; print("state.txt","state %4.0f",next_state); Exitlong("s19",Onclose,DEF,"b18",num,1); } } else if(state == 1001) then { if(close<=av_price[0]) then { /*Transit to next state */ next_state = 1; print("state.txt","state %4.0f",next_state); } }
프로필 이미지
랜덤데이터
2007-08-02
879
글번호 200364
예스트레이더 (iM증권)
답변완료

리딩스타 run log

시뮬레이션 중 리딩스타가 죽었습니다. 직장인이라서 시스템을 오전에 돌리고 계속 모니터링 할 수 없는데... 걱정입니다. 참고로 PC는 시스템만을 돌리기위한 피씨로 다른 프로그램은 거의 깔려 있지 않은 상황입니다.
프로필 이미지
랜덤데이터
2007-08-01
1351
글번호 200363
기타
답변완료

어떻게 해요

선물 테스트 할때 수수료 0.01 슬리피지 0.03 적용 하고7년동안 아래와같이 나왔어요 총손익 -1363pt 미청산포함 -1364pt 연평균 -193pt 총거래횟수 16314 회입니다 그러므로 총거래횟수 16314 회 분의 수수료 는 더이상 계산해서 공제하지않아도 되는건지요 글구 이렇케 큰손실 이라면 식을 반대로 작성하면 -1363pt 에서 +1363 pt 로 변환이 가능 한지요 저는 변환할능력이 없어요
프로필 이미지
회원
2007-08-01
1037
글번호 200362
예스트레이더 (iM증권)
답변완료

몇 가지 질문입니다.

수고하십니다.. 1. 하나의 봉에 매수와 청산이 동시에 떴을 때(매수 빨간색 화살표와 청산 파란색 화살표가 동시에 뜬 봉이 있더라구요...실제 체결은 안해봤지만) 매매 자체를 아예 안 하게 하는 방법은 없나요? 왜냐하면 매수하고 바로 청산해 버리면 청산이 안될 수도 있고 괜히 수수료 및 슬리피지 때문에 손해가 날 수 있으니깐요... 2. 선물지수에 따라 챠트의 옵션 종목을 조금씩 바꿉니다.(등가 수준으로)그런데, 6개의 시스템의 종목을 일일이 바꾸려고 하니까 약간 번거로운데, 종목을 한꺼번에 변경하는 방법은 없나요? 3. 수수료 및 슬리피지 설정은 실제 매매에서는 필요없는 설정이죠? 즉, 시뮬레이션할 때만 조절해 주면 되죠? 감사합니다...
프로필 이미지
도레미트리오
2007-08-01
914
글번호 200361
예스트레이더 (iM증권)
답변완료

시물레이션 결과

안녕하세요 시물레이션 검증 하면서 시스템개발중에 생긴 일입니다 수수료 0.01% 적용 슬리피지 0.03pt 적용 7분차트에서 7년간검증 해보니 총손익 -2500pt 가나오고 거래횟수 29.000회 나오더군요 그래서 마이너스라서 전략 로직을 플러스 쪽으로 바꿀까 생각중에 동일 식을 다시 해보니 이상해요 이상한점 수수료 0% 슬리피지 0 pt 설정 하니까 총손익 -98 pt네요 총 거래횟수 29.780회 이렇게 격차가 심하면 뭐가뭔지 정신이없어요 개발 방법은 어떻게 설정 해서 확인하면 되나요 이와같이 큰손실일때는 로직을 반대로 만들어 매매 하면 되지요 답변 이곳 감사합니다
프로필 이미지
회원
2007-08-01
1066
글번호 200358
예스트레이더 (iM증권)