커뮤니티
기준선변동 하면 장중 계속거래 손실은 수량추가
2010-12-20 18:02:31
834
글번호 34461
/*기준선설정 후 0.5상승이면 바이 0.5 하락이면 셀
이익후 이익가격이 기준선으로 재설정
손실이면 기준선변동없이 수량만 2배 다시진입*/
Input : baseline(260),OK(1),n1(0.5),n2(0.5),count(0),nn1(0.5),nn2(0.5);
var : cnt(0),entriestoday(0);
If OK==1 Then
var1 = baseline;
Else
var1 = dayopen;
entriestoday =0;
For cnt =0 to 10
{
If sDate == EntryDate(cnt) Then
entriestoday = entriestoday + 1;
}
##무포지션일때
If TotalTrades == 0 Then
{
//아무것도없고 기준선+상승이면 바이
If MarketPosition == 0 and OK == 1 and entriestoday < count and isexitname("진입가-하락바이손절")== false Then
buy("첫번째바이",AtLimit,var1 +n1);
//기준선-하락이면 셀
if MarketPosition == 0 and OK ==1 and entriestoday < count and isexitname("진입가+상승셀손절")== false Then
Sell("첫번째셀",AtLimit,var1 - n1);
//시가사용이고 고가가 시가 +상승보다크면바이
If MarketPosition == 0 and OK ==0 and entriestoday < count and H > var1 +n1 and isexitname("진입가-하락바이손절")== false Then
Buy("시가사용첫번째바이",AtLimit,var1 +n1);
//시가 사용이고 저가가 시가-하락보다 작으면 셀
If MarketPosition == 0 and OK == 0 and entriestoday < count and L < var1 -n1 and isexitname("진입가+상승셀손절")== false Then
Sell("시가사용첫번째셀",AtLimit,var1 -n1);
}
#매수포지션 이익손절정리
If MarketPosition == 1 Then
ExitLong("진입가+상승바이이익정리",AtLimit,EntryPrice + n1);
If MarketPosition == 1 Then
ExitLong("진입가-하락바이손절",AtLimit,EntryPrice-n1);
#매도포지션 이익손절
If MarketPosition == -1 Then
ExitShort("진입가-하락셀이익정리",AtLimit,EntryPrice-nn2);
If MarketPosition ==-1 Then
ExitShort("진입가+상승셀손절",AtLimit,EntryPrice+nn2 );
#이익후 이전청산가격기준으로 기준점재설정
If MarketPosition == 0 and ( IsExitName("진입가+상승바이익정리",1) == True or IsExitName("진입가-하락셀이익정리",1) == True) Then
{
//고가가 이전청산가격보다 크고 이전청산가+상승일때 재매수
If H > ExitPrice(1) and entriestoday < count Then
Buy("이전청산가+상승바이",AtLimit,ExitPrice(1)+n1);
//저가가 이전청산가보작고 이전청산가-하락일때재매도
If L < ExitPrice(1) and entriestoday < count Then
Sell ("이전청산가-하락셀",AtLimit,ExitPrice(1)-n1);
}
#손절후 이전청산명이 맞으면 수량추가
If MarketPosition == 0 and (IsExitName("진입가-하락바이손절",1)==True or IsExitName("진입가-하락셀이익정리",1)==True) and entriestoday < count Then
{
// 초기기준선 + 상승이면 2배로 계약추가
buy("바이손절후 수량추가재매수",AtLimit,var1+n1,2*CurrentEntries);
// 초기기준선 - 하락이면 2배로 계약추가
Sell("셀손절후 수량추가재매수",AtLimit,var1-n1,2*CurrentEntries);
}
//* // 수량추가후 이익정리
If MarketPosition == 1 and isentryname("바이손절후 수량추가재매수",1)== true and entriestoday < count Then
ExitLong("수량추가후 바이이익정리",AtLimit,EntryPrice+n1);
If MarketPosition ==-1 and isentryname("셀손절후 수량추가재매수",1)== true Then
ExitShort("수량추가후셀이익정리",AtLimit,EntryPrice-n1);
//*/
답변 1
예스스탁 예스스탁 답변
2010-12-21 10:04:02
> 따불 님이 쓴 글입니다.
> 제목 : 기준선변동 하면 장중 계속거래 손실은 수량추가
> /*기준선설정 후 0.5상승이면 바이 0.5 하락이면 셀
이익후 이익가격이 기준선으로 재설정
손실이면 기준선변동없이 수량만 2배 다시진입*/
Input : baseline(260),OK(1),n1(0.5),n2(0.5),count(0),nn1(0.5),nn2(0.5);
var : cnt(0),entriestoday(0);
If OK==1 Then
var1 = baseline;
Else
var1 = dayopen;
entriestoday =0;
For cnt =0 to 10
{
If sDate == EntryDate(cnt) Then
entriestoday = entriestoday + 1;
}
##무포지션일때
If TotalTrades == 0 Then
{
//아무것도없고 기준선+상승이면 바이
If MarketPosition == 0 and OK == 1 and entriestoday < count and isexitname("진입가-하락바이손절")== false Then
buy("첫번째바이",AtLimit,var1 +n1);
//기준선-하락이면 셀
if MarketPosition == 0 and OK ==1 and entriestoday < count and isexitname("진입가+상승셀손절")== false Then
Sell("첫번째셀",AtLimit,var1 - n1);
//시가사용이고 고가가 시가 +상승보다크면바이
If MarketPosition == 0 and OK ==0 and entriestoday < count and H > var1 +n1 and isexitname("진입가-하락바이손절")== false Then
Buy("시가사용첫번째바이",AtLimit,var1 +n1);
//시가 사용이고 저가가 시가-하락보다 작으면 셀
If MarketPosition == 0 and OK == 0 and entriestoday < count and L < var1 -n1 and isexitname("진입가+상승셀손절")== false Then
Sell("시가사용첫번째셀",AtLimit,var1 -n1);
}
#매수포지션 이익손절정리
If MarketPosition == 1 Then
ExitLong("진입가+상승바이이익정리",AtLimit,EntryPrice + n1);
If MarketPosition == 1 Then
ExitLong("진입가-하락바이손절",AtLimit,EntryPrice-n1);
#매도포지션 이익손절
If MarketPosition == -1 Then
ExitShort("진입가-하락셀이익정리",AtLimit,EntryPrice-nn2);
If MarketPosition ==-1 Then
ExitShort("진입가+상승셀손절",AtLimit,EntryPrice+nn2 );
#이익후 이전청산가격기준으로 기준점재설정
If MarketPosition == 0 and ( IsExitName("진입가+상승바이익정리",1) == True or IsExitName("진입가-하락셀이익정리",1) == True) Then
{
//고가가 이전청산가격보다 크고 이전청산가+상승일때 재매수
If H > ExitPrice(1) and entriestoday < count Then
Buy("이전청산가+상승바이",AtLimit,ExitPrice(1)+n1);
//저가가 이전청산가보작고 이전청산가-하락일때재매도
If L < ExitPrice(1) and entriestoday < count Then
Sell ("이전청산가-하락셀",AtLimit,ExitPrice(1)-n1);
}
#손절후 이전청산명이 맞으면 수량추가
If MarketPosition == 0 and (IsExitName("진입가-하락바이손절",1)==True or IsExitName("진입가-하락셀이익정리",1)==True) and entriestoday < count Then
{
// 초기기준선 + 상승이면 2배로 계약추가
buy("바이손절후 수량추가재매수",AtLimit,var1+n1,2*CurrentEntries);
// 초기기준선 - 하락이면 2배로 계약추가
Sell("셀손절후 수량추가재매수",AtLimit,var1-n1,2*CurrentEntries);
}
//* // 수량추가후 이익정리
If MarketPosition == 1 and isentryname("바이손절후 수량추가재매수",1)== true and entriestoday < count Then
ExitLong("수량추가후 바이이익정리",AtLimit,EntryPrice+n1);
If MarketPosition ==-1 and isentryname("셀손절후 수량추가재매수",1)== true Then
ExitShort("수량추가후셀이익정리",AtLimit,EntryPrice-n1);
//*/