커뮤니티
몇가지 질문
2004-01-15 19:29:13
1553
글번호 1996
제가 제일투자증권으로 전환한지 얼마되지 않아 모르는게 많아서 여러가지의 질문을 한꺼번에 하겠습니다. 양해해 주시고 답변부탁드립니다.
1. 매수청산의 조건이 여러개일 경우 어떻게 처리하여야 하는지요?
제가 원하는 매수청산조건은
단순이평한 스토캐스틱(20,12,12)이 CrossDown이 될때,
또는, 손실이 2%발생할때 즉시 청산하든지,
또는, 매수진입이후 현재까지의 최고종가대비 5%하락할때 즉시 청산하려고 합니다.
이상의 매수청산전략을 아래와 같이 작성하였습니다. 그런데, 시뮬레이션을 해보니 위의 3가지 청산조건중 마지막 청산조건만 적용되더군요. 어떻게 고쳐야 하나요?
Input : aa1(20), aa2(12), aa3(12), 손실(2), 하락(5);
Var : Con2(0), Con3(0);
Var1 = Stochastics_K(aa1,aa2); // Stochastics_K(단순이평)는 수식작성 예제에 있는 것을 저장해서 쓰고 있음
Var2 = Stochastics_D(aa1,aa2,aa3);
Var4 = highest(C, BarsSinceEntry()+1);
If CrossDown(Var1, Var2) Then
ExitLong("매수청산“, Atmarket);
Con2 = EntryPrice() * (100-손실)/100;
ExitLong("손절매1“, Atstop, Con2);
Con3 = Var4 * (100-하락)/100;
ExitLong("손절매2“, Atstop, Con3);
2. 주문명을 "손절매1", 손절매2" 등으로 기입하였는데, 시뮬레이션이후 이것을 확인할수가 없습니다. 아직 프로그램상 안되는 것인가요?
시뮬레이션후 차트상에도 표시가 안되고, 거래내역을 확인했을때도 모두 매수청산으로만 표시되니까, 어떤 경우의 청산인지 알수가 없군요. 제가 못찾은 건가요?
3. 스토캐스틱 곡선을 대신증권과 일치시키기 위해서 단순이평한 스토캐스틱을 사용하고 있습니다. 그런데도 조금의 차이가 생기더군요. Period입력변수가 100 이상 넘어가니까 10분봉 차트의 경우 Cross 시점이 대신증권차트와 0~3봉정도 차이가 나더군요. 이건 왜 그럴까요?
4. 일정한 금액으로 계속 거래되게끔 하기 위해서 수문수량을 다음과 같이 작성하였습니다.
Var5 = int(1000000/C);
Buy("매수",Atmarket, def, Var5);
그렇지만, 시뮬레이션 설정창에서 지정한 대로 "동일주수로 진입" 또는 "평가자산기준진입" 이 두가지 경우로만 결과가 보여지네요. 그렇다면 위와 같이 주문수량을 지정해봐야 시뮬레이션에서는 그 결과가 아무런 변화가 없다는 건데요. 제가 잘못알고 있는건가요?
5. "평가자산기준진입"은 어떤 의미인가요?
가령 시간이 지남에 따라 주가가 변하더라도 같은 금액 한도내에서 살수있는 최대수량으로 진입한다는 얘기인가요?
아니면 처음 자산이 거래가 반복됨으로 인한 자산의 증감을 발생하여 증감된 자산을 고려한 그 한도내에서 살수있는 최대수량으로 진입한다는 얘기인가요?
답변 1
예스스탁 예스스탁 답변
2004-01-16 11:49:27
안녕하세요? 예스스탁입니다...
문의하신 첫번째 식을 확인해 본 결과 손실율, 하락율에서 식을 약간 수정하였습니다...
Input : aa1(20), aa2(12), aa3(12), 손실(2), 하락(5);
Var : Con2(0), Con3(0);
Var1 = Stochastics_K(aa1,aa2);
Var2 = Stochastics_D(aa1,aa2,aa3);
Var4 = highest(C, BarsSinceEntry()+1);
If CrossDown(Var1, Var2) Then
ExitLong("매수청산", Atmarket);
Con2 = EntryPrice(0) * (1-손실/100);
ExitLong("손절매1", Atstop, Con2);
Con3 = Var4 * (1-하락/100);
ExitLong("손절매2", Atstop, Con3);
두번째로 질문하신 신호에 대한 이름이 표기되게 하는 작업은 현재 진행중이므로 조만간 사용 가능할 것으로 기대됩니다.
같은 로직을 사용하는데 지표에 차이가 생긴다는 것은 데이터가 들어오는 시간이 미세하나마 틀릴 수 있기 때문입니다. 이런 경우는 특히 짧은 시간주기를 사용할 경우 나타날 수 있습니다.
네번째로 질문하신 동일 금액으로 매매를 하는 기능도 작업 마무리 단계에 있는 것으로 알고 있습니다.
평가자산 기준 진입은 특히 주식의 경우 여러 종목을 비교할 경우 동일 주수로 하기에는 무리가 있기 때문에 평가자산(1억 기준)으로 시뮬레이션을 해서 종목간 비교를 할 수 있도록 해 놓은 기능입니다.
즐거운 하루 되세요...
> CJ_ccachi72 님이 쓴 글입니다.
> 제목 : 몇가지 질문
> 제가 제일투자증권으로 전환한지 얼마되지 않아 모르는게 많아서 여러가지의 질문을 한꺼번에 하겠습니다. 양해해 주시고 답변부탁드립니다.
1. 매수청산의 조건이 여러개일 경우 어떻게 처리하여야 하는지요?
제가 원하는 매수청산조건은
단순이평한 스토캐스틱(20,12,12)이 CrossDown이 될때,
또는, 손실이 2%발생할때 즉시 청산하든지,
또는, 매수진입이후 현재까지의 최고종가대비 5%하락할때 즉시 청산하려고 합니다.
이상의 매수청산전략을 아래와 같이 작성하였습니다. 그런데, 시뮬레이션을 해보니 위의 3가지 청산조건중 마지막 청산조건만 적용되더군요. 어떻게 고쳐야 하나요?
Input : aa1(20), aa2(12), aa3(12), 손실(2), 하락(5);
Var : Con2(0), Con3(0);
Var1 = Stochastics_K(aa1,aa2); // Stochastics_K(단순이평)는 수식작성 예제에 있는 것을 저장해서 쓰고 있음
Var2 = Stochastics_D(aa1,aa2,aa3);
Var4 = highest(C, BarsSinceEntry()+1);
If CrossDown(Var1, Var2) Then
ExitLong("매수청산“, Atmarket);
Con2 = EntryPrice() * (100-손실)/100;
ExitLong("손절매1“, Atstop, Con2);
Con3 = Var4 * (100-하락)/100;
ExitLong("손절매2“, Atstop, Con3);
2. 주문명을 "손절매1", 손절매2" 등으로 기입하였는데, 시뮬레이션이후 이것을 확인할수가 없습니다. 아직 프로그램상 안되는 것인가요?
시뮬레이션후 차트상에도 표시가 안되고, 거래내역을 확인했을때도 모두 매수청산으로만 표시되니까, 어떤 경우의 청산인지 알수가 없군요. 제가 못찾은 건가요?
3. 스토캐스틱 곡선을 대신증권과 일치시키기 위해서 단순이평한 스토캐스틱을 사용하고 있습니다. 그런데도 조금의 차이가 생기더군요. Period입력변수가 100 이상 넘어가니까 10분봉 차트의 경우 Cross 시점이 대신증권차트와 0~3봉정도 차이가 나더군요. 이건 왜 그럴까요?
4. 일정한 금액으로 계속 거래되게끔 하기 위해서 수문수량을 다음과 같이 작성하였습니다.
Var5 = int(1000000/C);
Buy("매수",Atmarket, def, Var5);
그렇지만, 시뮬레이션 설정창에서 지정한 대로 "동일주수로 진입" 또는 "평가자산기준진입" 이 두가지 경우로만 결과가 보여지네요. 그렇다면 위와 같이 주문수량을 지정해봐야 시뮬레이션에서는 그 결과가 아무런 변화가 없다는 건데요. 제가 잘못알고 있는건가요?
5. "평가자산기준진입"은 어떤 의미인가요?
가령 시간이 지남에 따라 주가가 변하더라도 같은 금액 한도내에서 살수있는 최대수량으로 진입한다는 얘기인가요?
아니면 처음 자산이 거래가 반복됨으로 인한 자산의 증감을 발생하여 증감된 자산을 고려한 그 한도내에서 살수있는 최대수량으로 진입한다는 얘기인가요?