커뮤니티
재문의 드립니다
2016-12-13 09:39:38
113
글번호 104923
안녕하세요. 바쁜 하루 즐겁게 시작하세요~
전에 수식중에 아래의 경우 이해가 안가서 문의드립니다. 제 생각이 맞는지도 알고 싶구요.
1. 본절설정
if HH >= EntryPrice+PriceScale*10 and HH < EntryPrice+PriceScale*15 Then
ExitLong("매수본절",AtStop,EntryPrice);}
위 구문에서 ExitLong 으로 매수청산주문 을 들어간거 같은데요, 제가 구현하려는건 청산을 해버리는게 아니라 수익이 10틱이 되는 순간 -15틱으로 설정돼 있던 손절을 끌어올려서 매수진입가와 같게 해버린다는 것이고 매수포지션은 계속 살아있어서 만일 수익이 25틱에 다다르면 익절청산 되고 수익이 떨어져서 밑으로 계속 내려가면 이젠 손절가=매수진입가 가 되어있으므로 매수진입가에서 청산돼 버리는 겁니다.
2. 수식질문
var : MACDV(0),mav1(0),mav2(0),mav3(0),mav4(0),mav5(0),HH(0),LL(0),RR(0);
위 구문에서 RR(0) 는 수식 중에 안보이는데 어떤 기능인지 궁금합니다.
3. 기타 질문
MACD 관련 수식 표현에서
기준선 위에 있으면 MACD > 0 이라는 표현이 맞나요?
MACDV = MACD(short,long);
MACDS = ema(MACDv,sig);
에서 골든크로스 한다면 CrossUp(MACDV,MACDS) 라는 표현을 사용하는것 같은데요,
만일 이미 골든크로스 교차점을 지나서 1개봉 정도 갔다면 아래와 같은 표현을 사용해야 하나요?
MACDV > MACDS
골든크로스 수식을 써주면 정확히 크로스 하는 시점만을 찾는것 같아서 그렇습니다.
if MarketPosition == 1 Then
이런 표현은 "현재 매수포지션이 있다면" 이라는 의미 맞나요?
if MarketPosition <= 0 and , if MarketPosition >= 0 and
그런데 이런 표현의 의미는 무엇인가요?
모르는게 많습니다. 가르침 부탁드립니다.
수고하세요 ^^
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 문의드립니다
> 안녕하세요
예스스탁입니다.
청산 25틱으로 작성해 드립니다.
input : Short(12),Long(25),P1(5),P2(20),P3(30),P4(60),P5(120);
var : MACDV(0),mav1(0),mav2(0),mav3(0),mav4(0),mav5(0),HH(0),LL(0),RR(0);
MACDV = MACD(short,long);
mav1 = ma(C,P1);
mav2 = ma(C,P2);
mav3 = ma(C,P3);
mav4 = ma(C,P4);
mav5 = ma(C,P5);
if MarketPosition <= 0 and
MACDV > 0 and
mav1 > mav2 and mav2 > mav3 and mav3 > mav4 and mav4 > mav5 and
countif(mav2 > mav2[1],5) == 5 and
C < mav1 and c < mav2 Then{
buy();
PlaySound("a.wav~~~~~~~~");
}
if MarketPosition >= 0 and
MACDV < 0 and
mav1 < mav2 and mav2 < mav3 and mav3 < mav4 and mav4 < mav5 and
countif(mav2 < mav2[1],5) == 5 and
C > mav1 and c > mav2 Then{
sell();
PlaySound("b.wav~~~~~~~~");
}
if MarketPosition == 1 Then{
exitlong("매수익절",atlimit,EntryPrice+PriceScale*25);
HH = highest(H,BarsSinceEntry);
if HH < EntryPrice+PriceScale*10 Then
ExitLong("매수손절",AtStop,EntryPrice-PriceScale*15);
if HH >= EntryPrice+PriceScale*10 and HH < EntryPrice+PriceScale*15 Then
ExitLong("매수본절",AtStop,EntryPrice);}
if MarketPosition == -1 Then{
ExitShort("매도익절",atlimit,EntryPrice-PriceScale*25);
LL = Lowest(L,BarsSinceEntry);
if LL > EntryPrice-PriceScale*10 Then
ExitShort("매도손절",AtStop,EntryPrice+PriceScale*15);
if LL <= EntryPrice-PriceScale*10 and LL > EntryPrice-PriceScale*15 Then
ExitShort("매도본절",AtStop,EntryPrice);
}
즐거운 하루되세요
> 웹피 님이 쓴 글입니다.
> 제목 : 문의드립니다
> 오늘도 수고 많으십니다.
환경 : 이평선(5,20,30,60,120일선)
1.매수
(MACD가 기준선 아래서 골든크로스 또는 기준선 위에 있으며) and (이평선 정배열) and (20일선 우상향이 5개봉 이상 유지되고 있고) and (현재봉 시가가 5일선 and 20일선 밑에 있다) 일때 매수진입 및 a.wav 실행
2.매도
(MACD가 기준선 위에서 데드크로스 또는 기준선 아래에 있으며) and (이평선 역배열) and (20일선 우하향이 5개봉 이상 유지되고 있고) and (현재봉 시가가 5일선 and 20일선 위에 있다) 일때 매도진입 및 b.wav 실행
3.기타
.청산 100틱(트레일링스탑을 구현할수 없으면 청산 25틱)
.손절 15틱
.본절: 10틱이상 수익중이면 손절가를 진입가와 동일하게 변경
.트레일링스탑: 15틱이상 수익중이면 손절을 5틱에 걸고 10틱 단위로 트레일링스탑으로 손절값을 변경해준다. 손절값 변경시 마다 c.wav 실행
예>매수진입시 +15틱 수익시 +5틱 손절, +25틱 수익시 +15틱 손절, +35틱 수익시 +25틱 손절.....
.수익 틱수를 마지막 완료된 봉위에 출력이 가능하시면 부탁드립니다.
주말 즐겁게 보내세요 ^^
답변 1
예스스탁 예스스탁 답변
2016-12-13 11:04:59
안녕하세요
예스스탁입니다.
1
if HH >= EntryPrice+PriceScale*10 and HH < EntryPrice+PriceScale*15 Then
ExitLong("매수본절",AtStop,EntryPrice);}
말씀하신 내용으로 작성된 식입니다.
진입이후에 10틱이상 15틱 미만으로 수익이 발생한 상태이면
가격이 진입가 까지 하락하면 청산한다는 내용입니다.
2
수식에 사용되는 않는 변수는 삭제하시면 됩니다.
여러방법으로 작성하다가 삭제하지 않고 남은 변수입니다.
3
MACD가 기준선 위이면 MACD > 0으로 표현하시면 딥니다.
4
상향돌파봉만 지정할 경우에는 crossup
상향돌파되어 있는 상태이면 MACDV > MACDS 입니다.
5
marketposition은 현재 차트상 신호상태입니다.
MarketPosition == 1은 매수진입신호가 발생된 상태를 말하며
MarketPosition <= 0은 현재봉이 무포지션이거나 매도진입상태
MarketPosition >= 0은 현재봉이 무포지션이거나 매수진입상태임을 나타냅니다.
매수진입식에 MarketPosition <= 0 조건이 있으면
현재봉이 무포지션이거나 매도진입중일때만 매수조건만족하면 매수진입해라는 내용입니다.
매도는 반대입니다.
즐거운 하루되세요
> 웹피 님이 쓴 글입니다.
> 제목 : 재문의 드립니다
> 안녕하세요. 바쁜 하루 즐겁게 시작하세요~
전에 수식중에 아래의 경우 이해가 안가서 문의드립니다. 제 생각이 맞는지도 알고 싶구요.
1. 본절설정
if HH >= EntryPrice+PriceScale*10 and HH < EntryPrice+PriceScale*15 Then
ExitLong("매수본절",AtStop,EntryPrice);}
위 구문에서 ExitLong 으로 매수청산주문 을 들어간거 같은데요, 제가 구현하려는건 청산을 해버리는게 아니라 수익이 10틱이 되는 순간 -15틱으로 설정돼 있던 손절을 끌어올려서 매수진입가와 같게 해버린다는 것이고 매수포지션은 계속 살아있어서 만일 수익이 25틱에 다다르면 익절청산 되고 수익이 떨어져서 밑으로 계속 내려가면 이젠 손절가=매수진입가 가 되어있으므로 매수진입가에서 청산돼 버리는 겁니다.
2. 수식질문
var : MACDV(0),mav1(0),mav2(0),mav3(0),mav4(0),mav5(0),HH(0),LL(0),RR(0);
위 구문에서 RR(0) 는 수식 중에 안보이는데 어떤 기능인지 궁금합니다.
3. 기타 질문
MACD 관련 수식 표현에서
기준선 위에 있으면 MACD > 0 이라는 표현이 맞나요?
MACDV = MACD(short,long);
MACDS = ema(MACDv,sig);
에서 골든크로스 한다면 CrossUp(MACDV,MACDS) 라는 표현을 사용하는것 같은데요,
만일 이미 골든크로스 교차점을 지나서 1개봉 정도 갔다면 아래와 같은 표현을 사용해야 하나요?
MACDV > MACDS
골든크로스 수식을 써주면 정확히 크로스 하는 시점만을 찾는것 같아서 그렇습니다.
if MarketPosition == 1 Then
이런 표현은 "현재 매수포지션이 있다면" 이라는 의미 맞나요?
if MarketPosition <= 0 and , if MarketPosition >= 0 and
그런데 이런 표현의 의미는 무엇인가요?
모르는게 많습니다. 가르침 부탁드립니다.
수고하세요 ^^
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 문의드립니다
> 안녕하세요
예스스탁입니다.
청산 25틱으로 작성해 드립니다.
input : Short(12),Long(25),P1(5),P2(20),P3(30),P4(60),P5(120);
var : MACDV(0),mav1(0),mav2(0),mav3(0),mav4(0),mav5(0),HH(0),LL(0),RR(0);
MACDV = MACD(short,long);
mav1 = ma(C,P1);
mav2 = ma(C,P2);
mav3 = ma(C,P3);
mav4 = ma(C,P4);
mav5 = ma(C,P5);
if MarketPosition <= 0 and
MACDV > 0 and
mav1 > mav2 and mav2 > mav3 and mav3 > mav4 and mav4 > mav5 and
countif(mav2 > mav2[1],5) == 5 and
C < mav1 and c < mav2 Then{
buy();
PlaySound("a.wav~~~~~~~~");
}
if MarketPosition >= 0 and
MACDV < 0 and
mav1 < mav2 and mav2 < mav3 and mav3 < mav4 and mav4 < mav5 and
countif(mav2 < mav2[1],5) == 5 and
C > mav1 and c > mav2 Then{
sell();
PlaySound("b.wav~~~~~~~~");
}
if MarketPosition == 1 Then{
exitlong("매수익절",atlimit,EntryPrice+PriceScale*25);
HH = highest(H,BarsSinceEntry);
if HH < EntryPrice+PriceScale*10 Then
ExitLong("매수손절",AtStop,EntryPrice-PriceScale*15);
if HH >= EntryPrice+PriceScale*10 and HH < EntryPrice+PriceScale*15 Then
ExitLong("매수본절",AtStop,EntryPrice);}
if MarketPosition == -1 Then{
ExitShort("매도익절",atlimit,EntryPrice-PriceScale*25);
LL = Lowest(L,BarsSinceEntry);
if LL > EntryPrice-PriceScale*10 Then
ExitShort("매도손절",AtStop,EntryPrice+PriceScale*15);
if LL <= EntryPrice-PriceScale*10 and LL > EntryPrice-PriceScale*15 Then
ExitShort("매도본절",AtStop,EntryPrice);
}
즐거운 하루되세요
> 웹피 님이 쓴 글입니다.
> 제목 : 문의드립니다
> 오늘도 수고 많으십니다.
환경 : 이평선(5,20,30,60,120일선)
1.매수
(MACD가 기준선 아래서 골든크로스 또는 기준선 위에 있으며) and (이평선 정배열) and (20일선 우상향이 5개봉 이상 유지되고 있고) and (현재봉 시가가 5일선 and 20일선 밑에 있다) 일때 매수진입 및 a.wav 실행
2.매도
(MACD가 기준선 위에서 데드크로스 또는 기준선 아래에 있으며) and (이평선 역배열) and (20일선 우하향이 5개봉 이상 유지되고 있고) and (현재봉 시가가 5일선 and 20일선 위에 있다) 일때 매도진입 및 b.wav 실행
3.기타
.청산 100틱(트레일링스탑을 구현할수 없으면 청산 25틱)
.손절 15틱
.본절: 10틱이상 수익중이면 손절가를 진입가와 동일하게 변경
.트레일링스탑: 15틱이상 수익중이면 손절을 5틱에 걸고 10틱 단위로 트레일링스탑으로 손절값을 변경해준다. 손절값 변경시 마다 c.wav 실행
예>매수진입시 +15틱 수익시 +5틱 손절, +25틱 수익시 +15틱 손절, +35틱 수익시 +25틱 손절.....
.수익 틱수를 마지막 완료된 봉위에 출력이 가능하시면 부탁드립니다.
주말 즐겁게 보내세요 ^^
다음글
이전글