커뮤니티
시스템식 관련 문의입니다.
2010-12-26 13:57:36
597
글번호 34570
안녕하세요.
여러 문의에 답변하시느라 바쁘신데 번거롭게 해 드려 죄송합니다.
YL 메뉴얼도 다 읽어봤고, 웬만하면 혼자 해결해 보려고 노력해 봤지만,
그래도 막히는 부분과 확실히 해 두어야 할 것들이 있어 이렇게 문의 드립니다.
1. 여러 차트에 시스템을 걸어두는 경우에 관한 내용
가. 여러 차트에 각각 시스템을 걸어두는게 가능하다는 건 알고 있습니다.
그 숫자에 제한이 있나요? 최대 몇개 차트까지 가능하다. 이런식으로.
만약 제한이 없다면, 주식종목 전부를 띄워
시스템을 각각 걸어놓는것도 가능한건가요?
(PC 성능이 못따라가면, 여러 PC를 활용한다는 가정입니다.)
나. 만약 위와 같이 각각 시스템이 걸려있는 상황에서,
(1번 종목에 A시스템, 2번 종목에 B시스템을 걸어두었습니다.)
1번 종목의 A시스템에 의해 매수신호가 나서 매수상태가되면(MArketPosition=1)
2번 종목의 B시스템의 If MarketPosition() == 0
조건은 참으로 판별되는지 거짓으로 판별되는지 알고 싶습니다.
(B시스템 첫 문장이 위에 저 조건식입니다. 선언부 없음)
각각의 시스템이 독립적으로 작동한다는 것은 알고 있지만,
MaketPosition() 함수는 서버에서 값을 불러오는 것처럼 사용되던데,
정확히 그 함수가 어떤 값을 돌려주는 지 알고 싶은 것입니다.
2. 매수 시점 / 채결 즉시 매도 주문 발생에 관한 내용
가. 목표 : 기준선(엔벨로프나 볼린져밴드 등) 이하로 주가가 내려가는 즉시 매수.
매수주문이 체결되는 즉시 매입가 1% 위에 매도 주문 입력.
나. 매수식을 If Crossdown(C,기준선) Then Buy(); 라고 작성하였는데,
Onclose 형식은 봉이 완성되었을 시 주문이 나가니,
주문이 나가는 시점에선, 주가가 신호가보다 한참 더 하향했거나,
기준선을 다시 뚫고 위로 올라가 있을 수도 있습니다.
기준선을 뚫고 내려가는 시점에서 바로 매수주문이 나가게 하려면,
Atlimit 나 Atstop을 사용해야 할듯한데, 이 주문도 크로스되는 시점이 아닌,
다음봉에서 조건 만족시 주문이 나가는 것으로 설명되어 있습니다.
현재가가 기준선을 Cross하는 순간 즉시 주문이 나가는 방법을 알고 싶습니다.
다. 매수주문이 체결되는 즉시,
목표액 (진입가 * (1+수익율/100)) 으로 매도 주문을 넣는 방법이 있나요?
강제청산 조건에 목표가 1%를 체크해 두는 방법을 생각해 보긴 했는데,
이건 주가가 1%위로 상승했을 시, 주문이 나가는 것으로,
미리 1%위에 주문을 넣어두는 것과 체결확률이 천지 차이입니다.
매수주문이 체결되는 즉시, 매도 주문이 나가게 하는 방법이 있나요?
장문의 문의 드리는점 다시한번 죄송합니다.
한해 마무리 잘하시고, 새해 복 많이 받으세요.
답변 1
예스스탁 예스스탁 답변
2010-12-27 13:54:55
안녕하세요
예스스탁입니다.
1.
가- 차트와 시스템에 제한은 없습니다.
컴포터에 무리가 없을 정도까지 사용하시면 되며
중복접속이 가능하므로 여러 컴퓨터에 나누어서 하실 수도 있습니다.
나- 시스템은 독립적입니다.
MaketPosition은 해당 시스템이 걸려 있는 차트에서
현재봉의 신호상태를 가져오는 함수입니다. 서버에서 값을 불러오거나 하는것은 아닙니다.
랭귀지에 제공되는 모든 포지션관련 함수들은 해당 시스템이 걸려있는 차트상의
값을 리턴하는 함수입니다. 다른 차트, 혹은 잔고와 관계되서 특정 값을 리턴하는 함수는 없습니다.
2.
If Crossdown(C,기준선) Then Buy();
봉완성시 신호발생하는 타입니다.
수식에서는 하나의 봉에서 동시에 계산되는 두개의 값을 가지고
터치시 즉시 신호를 발생하게는 만들수 없습니다.
다만 작성된다면 아래와 같이 작성만 됩니다.
기준선위에서 가격이 위치할때 현재 기준선을 atlimit가격으로 셋팅하고
다음봉이 해당 가격을 터치할 경우에 신호를 발생
if C > 기준선 then buy("b",atlimit,기준선)
위 내용외에는 방법이 없습니다.
또한 시스템은 가격을 확인하고 신호가 발생되므로
진입시 바로 청산주문을 발생하는 것과 같이는 작성이 되지 않습니다.
만약 미리 청산주문을 발생해 놓은 상태에서 해당 청산주문이 체결되기 전에
다른 조건에 의해 청산이 되면 이전에 발생시켜 놓은 청산주문이 문제가 되어
일반적으로 시스템트레이딩 툴에서는 제공되지 않는 기능입니다.
해당 내용은 수식으로는 가능하지 않습니다.
즐거운 하루되세요
> 사신의눈 님이 쓴 글입니다.
> 제목 : 시스템식 관련 문의입니다.
>
안녕하세요.
여러 문의에 답변하시느라 바쁘신데 번거롭게 해 드려 죄송합니다.
YL 메뉴얼도 다 읽어봤고, 웬만하면 혼자 해결해 보려고 노력해 봤지만,
그래도 막히는 부분과 확실히 해 두어야 할 것들이 있어 이렇게 문의 드립니다.
1. 여러 차트에 시스템을 걸어두는 경우에 관한 내용
가. 여러 차트에 각각 시스템을 걸어두는게 가능하다는 건 알고 있습니다.
그 숫자에 제한이 있나요? 최대 몇개 차트까지 가능하다. 이런식으로.
만약 제한이 없다면, 주식종목 전부를 띄워
시스템을 각각 걸어놓는것도 가능한건가요?
(PC 성능이 못따라가면, 여러 PC를 활용한다는 가정입니다.)
나. 만약 위와 같이 각각 시스템이 걸려있는 상황에서,
(1번 종목에 A시스템, 2번 종목에 B시스템을 걸어두었습니다.)
1번 종목의 A시스템에 의해 매수신호가 나서 매수상태가되면(MArketPosition=1)
2번 종목의 B시스템의 If MarketPosition() == 0
조건은 참으로 판별되는지 거짓으로 판별되는지 알고 싶습니다.
(B시스템 첫 문장이 위에 저 조건식입니다. 선언부 없음)
각각의 시스템이 독립적으로 작동한다는 것은 알고 있지만,
MaketPosition() 함수는 서버에서 값을 불러오는 것처럼 사용되던데,
정확히 그 함수가 어떤 값을 돌려주는 지 알고 싶은 것입니다.
2. 매수 시점 / 채결 즉시 매도 주문 발생에 관한 내용
가. 목표 : 기준선(엔벨로프나 볼린져밴드 등) 이하로 주가가 내려가는 즉시 매수.
매수주문이 체결되는 즉시 매입가 1% 위에 매도 주문 입력.
나. 매수식을 If Crossdown(C,기준선) Then Buy(); 라고 작성하였는데,
Onclose 형식은 봉이 완성되었을 시 주문이 나가니,
주문이 나가는 시점에선, 주가가 신호가보다 한참 더 하향했거나,
기준선을 다시 뚫고 위로 올라가 있을 수도 있습니다.
기준선을 뚫고 내려가는 시점에서 바로 매수주문이 나가게 하려면,
Atlimit 나 Atstop을 사용해야 할듯한데, 이 주문도 크로스되는 시점이 아닌,
다음봉에서 조건 만족시 주문이 나가는 것으로 설명되어 있습니다.
현재가가 기준선을 Cross하는 순간 즉시 주문이 나가는 방법을 알고 싶습니다.
다. 매수주문이 체결되는 즉시,
목표액 (진입가 * (1+수익율/100)) 으로 매도 주문을 넣는 방법이 있나요?
강제청산 조건에 목표가 1%를 체크해 두는 방법을 생각해 보긴 했는데,
이건 주가가 1%위로 상승했을 시, 주문이 나가는 것으로,
미리 1%위에 주문을 넣어두는 것과 체결확률이 천지 차이입니다.
매수주문이 체결되는 즉시, 매도 주문이 나가게 하는 방법이 있나요?
장문의 문의 드리는점 다시한번 죄송합니다.
한해 마무리 잘하시고, 새해 복 많이 받으세요.
다음글