커뮤니티
수식 수정 부탁드립니다.
2010-01-11 15:55:32
741
글번호 27377
제가 이런식으로 수식을 짰습니다.
그랬더니 그림 처럼 잘못된 신호가 2번 나왔습니다.
물론 첫번째 신호도 잘못되었다고 볼수 있습니다.
그것까지 하면 3번이군요.
어쨌든..제가 원한거는 크로스 후 일정 간격이 벌어지면 진입입니다.
그렇게 식을 짠거같은데 크로스가 없이도 일정간격에서 위아래로 흔들릴때 신호가 발생합니다.
수정하려면 어떻게 해야할까요?
if crossup(매수라인1,매도라인1) Then {
크로스 = True;}
if 크로스=true then {
if crossup(매수라인1,매도라인1+매도라인1*0.0764) and time<144000 Then {
크로스=False;
if MarketPosition == 0 then {
buy();}
if MarketPosition == -1 then {
ExitShort();
buy();}
}
if crossdown(매수라인1,매도라인1-매도라인1*0.0764) and time<144000 Then {
크로스=False;
if MarketPosition == 0 then {
sell();}
if MarketPosition == 1 then {
Exitlong();
sell();}}}
- 1. 2010-01-11 오후 3-56-02.png (0.05 MB)
답변 1
예스스탁 예스스탁 답변
2010-01-11 16:18:29
안녕하세요
예스스탁입니다.
같다라는 표현은 == 입니다.
=을 할당입니다.
var : 매수라인1(0),매도라인1(0),크로스(false);
if crossup(매수라인1,매도라인1) Then {
크로스 = True;}
if 크로스==true then {
if crossup(매수라인1,매도라인1+매도라인1*0.0764) and time<144000 Then {
크로스=False;
if MarketPosition == 0 then {
buy();}
if MarketPosition == -1 then {
ExitShort();
buy();
}
}
if crossdown(매수라인1,매도라인1-매도라인1*0.0764) and time<144000 Then {
크로스=False;
if MarketPosition == 0 then {
sell();}
if MarketPosition == 1 then {
Exitlong();
sell();
}
}
식을 줄이시면 아래와 같습니다.
if crossup(매수라인1,매도라인1*(1+0.0764)) and time<144000 Then {
buy();
}
if crossdown(매수라인1,매도라인1*(1-0.0764)) and time<144000 Then {
sell();
}
즐거운 하루되세요
> 천억벌자 님이 쓴 글입니다.
> 제목 : 수식 수정 부탁드립니다.
> 제가 이런식으로 수식을 짰습니다.
그랬더니 그림 처럼 잘못된 신호가 2번 나왔습니다.
물론 첫번째 신호도 잘못되었다고 볼수 있습니다.
그것까지 하면 3번이군요.
어쨌든..제가 원한거는 크로스 후 일정 간격이 벌어지면 진입입니다.
그렇게 식을 짠거같은데 크로스가 없이도 일정간격에서 위아래로 흔들릴때 신호가 발생합니다.
수정하려면 어떻게 해야할까요?
if crossup(매수라인1,매도라인1) Then {
크로스 = True;}
if 크로스=true then {
if crossup(매수라인1,매도라인1+매도라인1*0.0764) and time<144000 Then {
크로스=False;
if MarketPosition == 0 then {
buy();}
if MarketPosition == -1 then {
ExitShort();
buy();}
}
if crossdown(매수라인1,매도라인1-매도라인1*0.0764) and time<144000 Then {
크로스=False;
if MarketPosition == 0 then {
sell();}
if MarketPosition == 1 then {
Exitlong();
sell();}}}