커뮤니티

트레일링스탑관련

프로필 이미지
천억벌자
2010-02-26 12:46:21
784
글번호 28427
답변완료
수익이 1.5포 이상일때 거꾸로 50%올라오면 트레일링스탑을 하려고 합니다. 식을 if countif(c>=entryprice+1.5,barssinceentry) >=1 Then { if maxpositionprofit()/2 <= openpositionprofit() then { //트레일링스탑// exitlong(”트레일링스탑1”);} if countif(c<=entryprice-1.5,barssinceentry) >=1 Then { if maxpositionprofit()/2 <= openpositionprofit() then { //트레일링스탑// exitshort(”트레일링스탑2”);} 이런식으로 짰는데 맞는지 한번만 봐주시기 바랍니다. maxpositionprofit() 과 openpositionprofit() 을 변수로 지정해야하면.. 포지션이 새로 바뀔때마다 변수값이 자동으로 바뀌는지 감이 안와서 질문드립니다. 그럼 답변기다리겠습니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2010-02-26 16:57:22

안녕하세요 예스스탁입니다. 의도하시는 수식의 내용을 정확히 이해하지 못했습니다. 만약 수익이 1.5%이상 발생하고 그 수익중 절반이 감소할 때 청산을 하실 의도시면 식을 아래와 같이 작성해 주셔야 합니다. maxpositionprofit()/2 <= openpositionprofit() 두개의 함수는 실시간으로 계산되어 리턴됩니다. 하지만 조건내용이 포지션의 최대수익액의 절반보다 현재봉의 포지션 수익이 크면 청산하라는 의미므로 포지션 최대수익이 2.0이고 포지션 수익이 현재 조금 감소해 1.9를 기록하면 2.0/2 보다 크므로 바로 청산되므로 의미가 없습니다. if dayindex == 0 Then{ if C > O Then buy(); if C < O Then sell(); } if MarketPosition == 1 and highest(H,BarsSinceEntry) >=entryprice+1.5 Then { if c <= highest(H,BarsSinceEntry)-(highest(H,BarsSinceEntry)-EntryPrice)*0.5 then { exitlong("트레일링스탑1"); } } if MarketPosition == -1 and Lowest(L,BarsSinceEntry) <=entryprice-1.5 Then { if c >= Lowest(L,BarsSinceEntry)+(EntryPrice-Lowest(L,BarsSinceEntry))*0.5 then { ExitShort("트레일링스탑2"); } } 즐거운 하루되세요 > 천억벌자 님이 쓴 글입니다. > 제목 : 트레일링스탑관련 > 수익이 1.5포 이상일때 거꾸로 50%올라오면 트레일링스탑을 하려고 합니다. 식을 if countif(c>=entryprice+1.5,barssinceentry) >=1 Then { if maxpositionprofit()/2 <= openpositionprofit() then { //트레일링스탑// exitlong(”트레일링스탑1”);} if countif(c<=entryprice-1.5,barssinceentry) >=1 Then { if maxpositionprofit()/2 <= openpositionprofit() then { //트레일링스탑// exitshort(”트레일링스탑2”);} 이런식으로 짰는데 맞는지 한번만 봐주시기 바랍니다. maxpositionprofit() 과 openpositionprofit() 을 변수로 지정해야하면.. 포지션이 새로 바뀔때마다 변수값이 자동으로 바뀌는지 감이 안와서 질문드립니다. 그럼 답변기다리겠습니다.