커뮤니티
수식 부탁합니다.~
2017-01-21 02:18:51
169
글번호 106162
안녕하세요.. 이렇게 간단히 수식을 사용하고 있는데 손절과 청산부분을 어떻게 추가해야
막막해서 그림과 함께 올립니다.
기본 수식은 이렇습니다
--------------------------
input : Period2(20),Period3(60);
Variables: p1Avg(0), p2Avg(0), p3Avg(0);
p2Avg = MA(C, Period2);
p3Avg = MA(C, Period3);
# 매수/매도청산
If (p2Avg > p2Avg[1] AND p3Avg > p3Avg[1] ) Then
Buy ("매수");
# 매도/매수청산
If (p2Avg < p2Avg[2] AND p3Avg < p3Avg[1] ) Then
Sell ("매도");
여기에서 손절과 청산을 넣고 싶은데요..
그림에서 보면 MACD가 크로스 나는 첫번째(1) 시점의 캔들의 고점을 첫번에 매수 신호가 깨지 않으면(또는 일정 수치 이상) 손절은 안되고 거꾸로 고점을 아래로 깨면 손절..
두번째(2) MACD에선 데드크로스가 살짝 났는데 그 때의 캔들의 저점을 깨지 않으면 홀딩하고 마지막 3번 캔들의 저점을 깨면 청산하고 싶습니다..
매도신호를 보면 4번 캔들이 MACD 데드 크로스 상태인데 저점을 깨고 올라와서 바로 손절을 합니다.(예 4번 캔들 저점 위로 1틱 위로 올라가면 손절)
그리고.. 마지막 하나.. 더... 손절하거나 청산 후에 다시 재진입 신호가 안 나왔으면 합니다. 차트에 보이는 것 처럼 2개의 신호만 있으면 합니다. 그 안에서 손절, 청산이 있으면 합니다.
- 1. 106696_질문.JPG (0.12 MB)
답변 1
예스스탁 예스스탁 답변
2017-01-23 14:12:31
안녕하세요
예스스탁입니다.
input : Period2(20),Period3(60);
input : Short(12),Long(26),sig(9);
Var : p1Avg(0), p2Avg(0), p3Avg(0);
var : MACDV(0),MACDS(0),HH(0),LL(0);
p2Avg = MA(C, Period2);
p3Avg = MA(C, Period3);
MACDV = MACD(short,long);
MACDS = ema(MACDv,sig);
# 매수/매도청산
If (p2Avg > p2Avg[1] AND p3Avg > p3Avg[1] ) Then{
if (MarketPosition == 0 and MarketPosition(1) != 1) or MarketPosition == -1 Then
Buy ("매수");
}
# 매도/매수청산
If (p2Avg < p2Avg[2] AND p3Avg < p3Avg[1] ) Then{
if (MarketPosition == 0 and MarketPosition(1) != -1) or MarketPosition == 1 Then
Sell ("매도");
}
if crossup(MACDV,MACDS) Then
HH = H;
if CrossDown(MACDV,MACDS) Then
LL = L;
if MarketPosition == 1 Then{
if MACDV > MACDS and C < HH Then
exitlong();
if MACDV < MACDS and C < LL Then
exitlong();
}
if MarketPosition == -1 Then{
if MACDV < MACDS and C > LL Then
ExitShort();
if MACDV > MACDS and C > HH Then
ExitShort();
}
즐거운 하루되세요
> 타잔94 님이 쓴 글입니다.
> 제목 : 수식 부탁합니다.~
> 안녕하세요.. 이렇게 간단히 수식을 사용하고 있는데 손절과 청산부분을 어떻게 추가해야
막막해서 그림과 함께 올립니다.
기본 수식은 이렇습니다
--------------------------
input : Period2(20),Period3(60);
Variables: p1Avg(0), p2Avg(0), p3Avg(0);
p2Avg = MA(C, Period2);
p3Avg = MA(C, Period3);
# 매수/매도청산
If (p2Avg > p2Avg[1] AND p3Avg > p3Avg[1] ) Then
Buy ("매수");
# 매도/매수청산
If (p2Avg < p2Avg[2] AND p3Avg < p3Avg[1] ) Then
Sell ("매도");
여기에서 손절과 청산을 넣고 싶은데요..
그림에서 보면 MACD가 크로스 나는 첫번째(1) 시점의 캔들의 고점을 첫번에 매수 신호가 깨지 않으면(또는 일정 수치 이상) 손절은 안되고 거꾸로 고점을 아래로 깨면 손절..
두번째(2) MACD에선 데드크로스가 살짝 났는데 그 때의 캔들의 저점을 깨지 않으면 홀딩하고 마지막 3번 캔들의 저점을 깨면 청산하고 싶습니다..
매도신호를 보면 4번 캔들이 MACD 데드 크로스 상태인데 저점을 깨고 올라와서 바로 손절을 합니다.(예 4번 캔들 저점 위로 1틱 위로 올라가면 손절)
그리고.. 마지막 하나.. 더... 손절하거나 청산 후에 다시 재진입 신호가 안 나왔으면 합니다. 차트에 보이는 것 처럼 2개의 신호만 있으면 합니다. 그 안에서 손절, 청산이 있으면 합니다.