커뮤니티
행복; 수식 작성 바랍니다
2015-05-26 01:30:29
173
글번호 86386
한국의 금융산업 발전을 위해 불철주야 애쓰시는 귀하의 노고를 높이 평가합니다
시스템식 작성 바랍니다
<< 아래 >>의 수식 중에 잘못된 부분을 바로 잡아 주시기 바랍니다
=====================<< 아래 >>========================
input : 진입금액(10000000);
var : didx(0);
if date != date[1] Then
Condition1 = false;
if Condition1 == false Then {
If Lowest(L,DayIndex+1) <= DayOpen*(1-1.5/100) Then {
buy("b",AtStop,Lowest(L,DayIndex+1)*(1+1.0/100),int(진입금액/C));
Condition1 = true;
}
}
if MarketPosition == 1 Then{
if MarketPosition[1] != MarketPosition Then
if highest(h,BarsSinceEntry) >= EntryPrice*(1.02) Then
ExitLong("bx1",AtStop,highest(h,BarsSinceEntry)*(0.985),"",int(CurrentContracts),1);
if stime == 144300 Then
ExitLong("bx2");
}
============================================================
상기의 시스템식을 실제 적용해 보았습니다
대상; 현물 CJ
주기; 분봉
적용하는 현물 CJ 의 차트기간; 2015년 4월 29일부터 2015년 5월 6일까지
< 질문 1 >
- 9분봉에 적용하면 2015년 5월 4일에 매수를 하고 144200에 매도를 하는데
1분봉을 적용하면 2015년 5월 4일에 매수를 하지 않습니다
- 무엇이 잘못된 것인가요? 바로 잡아 주시기 바랍니다
< 질문 2 >
- 9분봉에 적용하면 2015년 5월 4일에 매수를 하고 144200에 매도를 하는데
- " if highest(h,BarsSinceEntry) >= EntryPrice*(1.02) Then
ExitLong("bx1",AtStop,highest(h,BarsSinceEntry)*(0.985),"",
int(CurrentContracts),1); " 를 삭제하면
9분봉을 적용해도 2015년 5월 4일에 매수를 하지 않습니다
- 무엇이 잘못된 것인가요? 바로 잡아 주시기 바랍니다
수고하십시요^^
답변 1
예스스탁 예스스탁 답변
2015-05-28 16:49:16
안녕하세요
예스스탁입니다.
1.
input : 진입금액(10000000);
var : didx(0);
if date != date[1] Then
Condition1 = false;
if MarketPosition == 1 Then
Condition1 = true;
if Condition1 == false Then {
If Lowest(L,DayIndex+1) <= DayOpen*(1-1.5/100) Then {
buy("b",AtStop,Lowest(L,DayIndex+1)*(1+1.0/100),int(진입금액/C));
}
}
if MarketPosition == 1 Then{
if MarketPosition[1] != MarketPosition Then
if highest(h,BarsSinceEntry) >= EntryPrice*(1.02) Then
ExitLong("bx1",AtStop,highest(h,BarsSinceEntry)*(0.985),"",int(CurrentContracts),1);
}
SetStopEndofday(144300);
2
if MarketPosition == 1 Then{
if MarketPosition[1] != MarketPosition Then
if stime == 144300 Then
ExitLong("bx2");
}
bx1을 삭제하시면 위와 같은 구조가 됩니다.
진입이후 첫봉이고 그봉이 14시43분이어야만 청산이 됩니다.
즉 이전일에 진입한 부분이 청산이 되지 않았으므로
다음날 진입을 못하는 것입니다.
당일 청산함수를 이용해 시간청산하시기 바랍니다.
input : 진입금액(10000000);
var : didx(0);
if date != date[1] Then
Condition1 = false;
if Condition1 == false Then {
If Lowest(L,DayIndex+1) <= DayOpen*(1-1.5/100) Then {
buy("b",AtStop,Lowest(L,DayIndex+1)*(1+1.0/100),int(진입금액/C));
Condition1 = true;
}
}
if MarketPosition == 1 Then{
if MarketPosition[1] != MarketPosition Then
if highest(h,BarsSinceEntry) >= EntryPrice*(1.02) Then
ExitLong("bx1",AtStop,highest(h,BarsSinceEntry)*(0.985),"",int(CurrentContracts),1);
}
SetStopEndofday(144300);
즐거운 하루되세요
> 행복한가방 님이 쓴 글입니다.
> 제목 : 행복; 수식 작성 바랍니다
> 한국의 금융산업 발전을 위해 불철주야 애쓰시는 귀하의 노고를 높이 평가합니다
시스템식 작성 바랍니다
<< 아래 >>의 수식 중에 잘못된 부분을 바로 잡아 주시기 바랍니다
=====================<< 아래 >>========================
input : 진입금액(10000000);
var : didx(0);
if date != date[1] Then
Condition1 = false;
if Condition1 == false Then {
If Lowest(L,DayIndex+1) <= DayOpen*(1-1.5/100) Then {
buy("b",AtStop,Lowest(L,DayIndex+1)*(1+1.0/100),int(진입금액/C));
Condition1 = true;
}
}
if MarketPosition == 1 Then{
if MarketPosition[1] != MarketPosition Then
if highest(h,BarsSinceEntry) >= EntryPrice*(1.02) Then
ExitLong("bx1",AtStop,highest(h,BarsSinceEntry)*(0.985),"",int(CurrentContracts),1);
if stime == 144300 Then
ExitLong("bx2");
}
============================================================
상기의 시스템식을 실제 적용해 보았습니다
대상; 현물 CJ
주기; 분봉
적용하는 현물 CJ 의 차트기간; 2015년 4월 29일부터 2015년 5월 6일까지
< 질문 1 >
- 9분봉에 적용하면 2015년 5월 4일에 매수를 하고 144200에 매도를 하는데
1분봉을 적용하면 2015년 5월 4일에 매수를 하지 않습니다
- 무엇이 잘못된 것인가요? 바로 잡아 주시기 바랍니다
< 질문 2 >
- 9분봉에 적용하면 2015년 5월 4일에 매수를 하고 144200에 매도를 하는데
- " if highest(h,BarsSinceEntry) >= EntryPrice*(1.02) Then
ExitLong("bx1",AtStop,highest(h,BarsSinceEntry)*(0.985),"",
int(CurrentContracts),1); " 를 삭제하면
9분봉을 적용해도 2015년 5월 4일에 매수를 하지 않습니다
- 무엇이 잘못된 것인가요? 바로 잡아 주시기 바랍니다
수고하십시요^^