커뮤니티
부탁 드립니다.
2013-12-26 01:22:20
168
글번호 70757
안녕하세요.
아래의 수식이 궁금하구요, 수식에 코멘트 부탁 드립니다.
1.
매수조건, 매도조건에 따라
하루 한번 진입. 당일청산.
매수조건이나 매도 조건중 만족하는 조건에 한번만 진입. 당일청산.
매수일 때
매수익절조건 또는 30틱 익절
매수손절조건 또는 15틱 손절.
매도일 때
매도익절조건 또는 30틱 익절
매도손절조건 또는 15틱 손절.
만기일, 수능일 제어.
수익으로 끝나면 어제 진입한 조건 그대로 진입.
어제 매수조건으로 수익이면 오늘도 매수조건으로만 진입.
매도조건으로 수익이면 오늘도 매도조건으로만 진입.
하루 손실이면 어제 진입한 조건 그대로 진입.
삼일 연속 손실이면 처음 진입한 조건과 반대 조건으로만 진입.
수익이 나면 계속 같은 조건으로 진입하고 삼일 연속 손실이면 진입식을 반대 진입식만 진입하는 겁니다.
연속 손실이 나서 바꿔서 진입한 식도 다시 삼일 연속 손실이면 다시 진입식을 바꾸고, 수익이 나면 계속 같은 수식으로만 진입합니다.
2.
추가로
2시까지 익절, 손절이 없을 때 강제청산하는 수식도 부탁 드립니다.
항상 빠르고 친절한 답변, 감사합니다.
수식에 코멘트 꼭 부탁 드립니다.
답변 1
예스스탁 예스스탁 답변
2013-12-26 11:36:30
안녕하세요
예스스탁입니다.
var : cnt(0),count(0),Bloss(0),Sloss(0);
#당일 진입횟수
count = 0;
for cnt = 0 to 10{
if sdate == EntryDate(cnt) Then
count = count+1;
}
#최근 3회 거래 매수/매도 손실횟수
BLoss = 0;
Sloss = 0;
for cnt = 1 to 3{
if PositionProfit(cnt) < 0 and MarketPosition(cnt) == 1 Then
Bloss = Bloss+1;
if PositionProfit(cnt) < 0 and MarketPosition(cnt) == -1 Then
Sloss = Sloss+1;
}
#현재 무포지션이고 당일 첫진입일 경우만 진입
if MarketPosition == 0 and count == 0 then{
if 매수조건 Then{
#차트상 첫진입이거나
#두번째 이후의 진입인데 직전거래가 매수이고 수익이거나
#3회연속 매도 손실일때
#직전거래가 매수인데 매수 3회연속 손실이 아닐때
if TotalTrades == 0 or
(TotalTrades >= 1 and PositionProfit(1) >= 0 and MarketPosition(1) == 1) Or
(TotalTrades >= 1 and Sloss == 3 and PositionProfit(1) < 0 and MarketPosition(1) == -1) Or
(TotalTrades >= 1 and Bloss < 3 and PositionProfit(1) < 0 and MarketPosition(1) == 1) Then
buy("매수");
}
if 매도조건 Then{
#차트상 첫진입이거나
#두번째 이후의 진입인데 직전거래가 매도이고 수익이거나
#3회연속 매수 손실일때
#직전거래가 매도인데 매도 3회연속 손실이 아닐때
if TotalTrades == 0 or
(TotalTrades >= 1 and PositionProfit(1) >= 0 and MarketPosition(1) == -1) Or
(TotalTrades >= 1 and Bloss == 3 and PositionProfit(1) < 0 and MarketPosition(1) == 1) Or
(TotalTrades >= 1 and Sloss < 3 and PositionProfit(1) < 0 and MarketPosition(1) == -1) Then
sell("매도");
}
}
#30틱 수익시 청산
SetStopProfittarget(30*PriceScale,PointStop);
#15틱 손실시 청산
SetStopLoss(15*PriceScale,PointStop);
#2시 청산(수능일은 15시)
if sdate == 20131107 or sdate == 20121108 Then
SetStopEndofday(150000);
Else
SetStopEndofday(140000);
문의하신 내용중
만기일과 수능일은 어떤 내용을 제어를 하시는지 모르겠습니다.
만기일도 오후2시도 정규장내 시간이므로 2시 청산으로 제어할 내용이 없습니다.
수능일의 경우 1시간늦게 시작해 늦게 끝나므로
수능일만 시간을 1시간 늦춰서 작성했습니다.
수능일은 날짜를 직접 지정해야 합니다.
최근 2년의 날짜만 지정해 드립니다.
즐거운 하루되세요
> 고운무지개 님이 쓴 글입니다.
> 제목 : 부탁 드립니다.
> 안녕하세요.
아래의 수식이 궁금하구요, 수식에 코멘트 부탁 드립니다.
1.
매수조건, 매도조건에 따라
하루 한번 진입. 당일청산.
매수조건이나 매도 조건중 만족하는 조건에 한번만 진입. 당일청산.
매수일 때
매수익절조건 또는 30틱 익절
매수손절조건 또는 15틱 손절.
매도일 때
매도익절조건 또는 30틱 익절
매도손절조건 또는 15틱 손절.
만기일, 수능일 제어.
수익으로 끝나면 어제 진입한 조건 그대로 진입.
어제 매수조건으로 수익이면 오늘도 매수조건으로만 진입.
매도조건으로 수익이면 오늘도 매도조건으로만 진입.
하루 손실이면 어제 진입한 조건 그대로 진입.
삼일 연속 손실이면 처음 진입한 조건과 반대 조건으로만 진입.
수익이 나면 계속 같은 조건으로 진입하고 삼일 연속 손실이면 진입식을 반대 진입식만 진입하는 겁니다.
연속 손실이 나서 바꿔서 진입한 식도 다시 삼일 연속 손실이면 다시 진입식을 바꾸고, 수익이 나면 계속 같은 수식으로만 진입합니다.
2.
추가로
2시까지 익절, 손절이 없을 때 강제청산하는 수식도 부탁 드립니다.
항상 빠르고 친절한 답변, 감사합니다.
수식에 코멘트 꼭 부탁 드립니다.