커뮤니티
setstoploss와 관련 문의드립니다.
2012-05-26 18:05:07
299
글번호 51364
항상 친절하게 질문에 답변해주셔서 고맙습니다.
문의드리는 내용은
data2에서 setstoploss(1, percentstop)이 실행이되면(즉 data2에서 진입가격대비 1%하락시) data1에서 매수가 실행되도록 하려고 아래 식을 적용해 보았는데 잘 안되어서 문의드립니다.
if data2(setstoploss(1, percentstop)) then
buy(); 이것을 적용하면 data2에서 발생한 신호보다 많이 발생,
if data2(corssdown(C, EntryPrice*0.99)) then
buy();
또는
if data2(C <= EntryPrice*0.99) then
buy();
이것을 적용하면 매수신호가 안나옵니다.
어느부분에 문제가 있는지요?
부탁드립니다.
답변 1
예스스탁 예스스탁 답변
2012-05-29 10:29:31
안녕하세요
예스스탁입니다.
강제청산이나 수식안에 atstop,atlimit와 모든 포지션 관련 함수는
주종목(data1)만 감시하게 되어 있습니다.
그러므로
data2(setstoploss(1, percentstop))
buy('b",atstop,data2(h+0.1));
와 같이는 작성이 되지 않으며
참조데이터는 모두 봉완성시(if문)로만 작성해서 사용하셔야 합니다.
var : d2c(0,data1);
d2c = data2(c);
if MarketPosition == -1 and data2(C) <= d2C[BarsSinceEntry]*0.99 Then
buy();
즐거운 하루되세요
> 민기삼촌 님이 쓴 글입니다.
> 제목 : setstoploss와 관련 문의드립니다.
> 항상 친절하게 질문에 답변해주셔서 고맙습니다.
문의드리는 내용은
data2에서 setstoploss(1, percentstop)이 실행이되면(즉 data2에서 진입가격대비 1%하락시) data1에서 매수가 실행되도록 하려고 아래 식을 적용해 보았는데 잘 안되어서 문의드립니다.
if data2(setstoploss(1, percentstop)) then
buy(); 이것을 적용하면 data2에서 발생한 신호보다 많이 발생,
if data2(corssdown(C, EntryPrice*0.99)) then
buy();
또는
if data2(C <= EntryPrice*0.99) then
buy();
이것을 적용하면 매수신호가 안나옵니다.
어느부분에 문제가 있는지요?
부탁드립니다.
이전글