커뮤니티
교차수식 문의드립니다
2012-06-08 15:10:33
335
글번호 51814
수고하십니다
macd 나 스톡이 먼저 교차한 이후에 나중에 이평 교차가 나온시점에만 매수 매도 하는 수식인데 잘 안됩니다.
index > value1 index > value2 순서를 이리 저리 바꾸어도 안되네요
다시한번 수고 좀 부탁드립니다.(하이투자증권 사용)
input : MACDP1(12),MACDP2(26),MACDP3(9),sto1(10),sto2(5),sto3(5),P1(5),P2(20);
var1 = macd(MACDP1,MACDP2);
var2 = ema(var1,MACDP3);
var3 = StochasticsK(sto1,sto2);
var4 = StochasticsD(sto1,sto2,sto3);
var5 = ma(c,p1);
var6 = ma(c,P2);
if crossup(var1,var2) or crossup(var3,var4) Then{
value1 = index;
value2 = TimeToMinutes(stime);
}
if (var1 > var2 or var3 > var4) and index > value2 and crossuP(var5,var6) Then
buy();
if crossdown(var1,var2) or crossdown(var3,var4) Then{
value3 = index;
value4 = TimeToMinutes(stime);
}
if (var1 < var2 or var3 < var4) and index > value3 and crossdown(var5,var6) Then
sell();
답변 1
예스스탁 예스스탁 답변
2012-06-08 15:41:04
안녕하세요
예스스탁입니다.
식을 수정했습니다.
골드시 봉번호는 value1에 데드시 봉번호는 value3에 저장됩니다.
input : MACDP1(12),MACDP2(26),MACDP3(9),sto1(10),sto2(5),sto3(5),P1(5),P2(20);
var : upcross(0),dncross(0);
var1 = macd(MACDP1,MACDP2);
var2 = ema(var1,MACDP3);
var3 = StochasticsK(sto1,sto2);
var4 = StochasticsD(sto1,sto2,sto3);
var5 = ma(c,p1);
var6 = ma(c,P2);
#MACD나 STO가 골든크로스가 발생한 봉의 봉번호를 value1에 저장
if crossup(var1,var2) or crossup(var3,var4) Then{
value1 = index;
upcross = 1;
}
#현재 MACD나 STO가 골드상태이고 현재봉번호는 value1보다 크고
#이평 골든크로스가 발생하면 매수
if upcross == 1 and (var1 > var2 or var3 > var4) and index > value1 and crossuP(var5,var6) Then
buy();
if MarketPosition == 1 Then
upcross = 0;
#MACD나 STO가 데드크로스가 발생한 봉의 봉번호를 value3에 저장
if crossdown(var1,var2) or crossdown(var3,var4) Then{
value3 = index;
dncross = 1;
}
#현재 MACD나 STO가 데드상태이고 현재봉번호는 value3보다 크고
#이평 데드크로스가 발생하면 매도
if dncross == -1 and (var1 < var2 or var3 < var4) and index > value3 and crossdown(var5,var6) Then
sell();
if MarketPosition == -1 Then
dncross = 0;
의도와 다르시면 다시 글 올려주시기 바랍니다.
즐거운 하루되세요
> 하나로 님이 쓴 글입니다.
> 제목 : 교차수식 문의드립니다
> 수고하십니다
macd 나 스톡이 먼저 교차한 이후에 나중에 이평 교차가 나온시점에만 매수 매도 하는 수식인데 잘 안됩니다.
index > value1 index > value2 순서를 이리 저리 바꾸어도 안되네요
다시한번 수고 좀 부탁드립니다.(하이투자증권 사용)
input : MACDP1(12),MACDP2(26),MACDP3(9),sto1(10),sto2(5),sto3(5),P1(5),P2(20);
var1 = macd(MACDP1,MACDP2);
var2 = ema(var1,MACDP3);
var3 = StochasticsK(sto1,sto2);
var4 = StochasticsD(sto1,sto2,sto3);
var5 = ma(c,p1);
var6 = ma(c,P2);
if crossup(var1,var2) or crossup(var3,var4) Then{
value1 = index;
value2 = TimeToMinutes(stime);
}
if (var1 > var2 or var3 > var4) and index > value2 and crossuP(var5,var6) Then
buy();
if crossdown(var1,var2) or crossdown(var3,var4) Then{
value3 = index;
value4 = TimeToMinutes(stime);
}
if (var1 < var2 or var3 < var4) and index > value3 and crossdown(var5,var6) Then
sell();
이전글