커뮤니티
즉시청산/봉완성후 청산 수식 검토 부탁합니다.
2019-01-13 17:04:31
164
글번호 125227
if MarketPosition == 1 then
{
ExitLong("즉시익절",AtLimit,EntryPrice+PriceScale*100);
ExitLong("즉시손절",AtStop,EntryPrice-PriceScale*100);
}
이수식으로 하면 "설정창에 청산시점을 봉완성시"로 해도 위식으로 하면 가격 만족시 즉시 청산하는 결과로 나옴니다. (1조건)
여기에 다음의 조건을 넣고 싶었습니다. (2조건)
위 청산을 유지하지만 좀 낮더라도 봉완성후 조건 만족시에도 청산하는 수식을 만들고 싶었습니다.
1조건: 100tick 도달시 즉시 청산
2조건: 80tick - 100tick 사이에서 봉완성시 청산
그것에 대한 수식을 다음과 같이 넣었습니다.
if MarketPosition == 1 then
{
ExitLong("즉시익절",AtLimit,EntryPrice+PriceScale*100);
ExitLong("봉완성익절",OnClose,EntryPrice+PriceScale*80);
ExitLong("즉시손절",AtStop,EntryPrice-PriceScale*100);
ExitLong("봉완성손절",OnClose,EntryPrice-PriceScale*80);
}
그랬는데 제의도와 다르게 청산 결과 가 나옵니다.
1조건은 맞게 나오는데(100틱 청산) 2조건은 (3틱에서 10틱까지 청산) 이상하게 나와요..
제의도되로 수식 수정 부탁드려요`~~
- 1. oooooo.JPG (0.06 MB)
- 2. ppppp.JPG (0.06 MB)
답변 1
예스스탁 예스스탁 답변
2019-01-14 14:26:04
안녕하세요
예스스탁입니다.
1
강제청산탭의 청산시점은 강제청산에 해당 하는 옵션입니다.
SetStopLoss
SetStopProfittarget
SetStopTrailing
SetStopInactivity
SetStopEndofday
설정창에서 강제청산을 지정하거나
수식안에서 강제청산함수를 사용해서 발생하는 청산신호는 해당 옵션이 적용됩니다.
2
exitlong이나 exitshort으로 구현한 청산은 모두 일반청산입니다.
3
atstop,atlimit 신호타입만 뒤에 가격을 지정할수 있습니다.
onclose,atmarket은 봉완성시에 신호가 발생하는 타입으로
if문으로 조건을 지정합니다.
if MarketPosition == 1 then
{
ExitLong("즉시익절",AtLimit,EntryPrice+PriceScale*100);
if C >= EntryPrice+PriceScale*80 Then
ExitLong("봉완성익절");
ExitLong("즉시손절",AtStop,EntryPrice-PriceScale*100);
if c <= EntryPrice-PriceScale*80 Then
ExitLong("봉완성손절");
}
즐거운 하루되세요
> 이형지 님이 쓴 글입니다.
> 제목 : 즉시청산/봉완성후 청산 수식 검토 부탁합니다.
>
if MarketPosition == 1 then
{
ExitLong("즉시익절",AtLimit,EntryPrice+PriceScale*100);
ExitLong("즉시손절",AtStop,EntryPrice-PriceScale*100);
}
이수식으로 하면 "설정창에 청산시점을 봉완성시"로 해도 위식으로 하면 가격 만족시 즉시 청산하는 결과로 나옴니다. (1조건)
여기에 다음의 조건을 넣고 싶었습니다. (2조건)
위 청산을 유지하지만 좀 낮더라도 봉완성후 조건 만족시에도 청산하는 수식을 만들고 싶었습니다.
1조건: 100tick 도달시 즉시 청산
2조건: 80tick - 100tick 사이에서 봉완성시 청산
그것에 대한 수식을 다음과 같이 넣었습니다.
if MarketPosition == 1 then
{
ExitLong("즉시익절",AtLimit,EntryPrice+PriceScale*100);
ExitLong("봉완성익절",OnClose,EntryPrice+PriceScale*80);
ExitLong("즉시손절",AtStop,EntryPrice-PriceScale*100);
ExitLong("봉완성손절",OnClose,EntryPrice-PriceScale*80);
}
그랬는데 제의도와 다르게 청산 결과 가 나옵니다.
1조건은 맞게 나오는데(100틱 청산) 2조건은 (3틱에서 10틱까지 청산) 이상하게 나와요..
제의도되로 수식 수정 부탁드려요`~~