커뮤니티
문의드립니다
2016-09-21 22:00:20
120
글번호 102096
1.
var42 = ma(C,100);
if var42 > var42[1] Then
buy();
if var42 < var42[1] Then
sell();
국선.해외에 대입을해볼려고합니다
1. 국선(0.5) 1틱
위 지표에 계약수는 총4계약
매수,매도에 무조건 총4개에 대한 진입
매수신호 후 1계약 5틱청산 2계약 10틱청산 3계약 15틱청산 4계약 20틱청산
스위칭은 무조건 반대로 총4개
외부변수 가 필요할듯싶습니다 (1계약,2계약,3계약,4계약) 조절가능하게
2. 해외선물
위 1번과 같지만
1계약 10틱청산 2계약 20틱청산 3계약 30틱청산 4계약 50틱청산
스위칭은 무조건 반대로 총4개
위와같이 외부변수가 필요할듯싶습니다
3. 위 2가지다 추가 했으면하는 수식
목표수익 을 외부변수가능한 수식을 따로 하나 적어주시기를바랍니다
바로 복사해서 추가만 할수있는 수식
밑에 해주셧던 수식을 알고있습니다 ...
하지만 제가 대입을 해보니.. 오류가 발생하는 부분이라서
다시한번부탁드립니다
감사합니다.
답변 1
예스스탁 예스스탁 답변
2016-09-22 13:39:58
안녕하세요
예스스탁입니다.
분할청산하는 내용이므로 분할횟수에 맞게
사용자분이 수식을 수정하셔야 합니다.
외부변수로 자동으로 청산식이 조절되게 할수 없습니다.
아래 내용식 2개 비교해 보시면 수량에 따라 추가해야 하는 내용을 아실수 있습니다.
수식작성에 참고하시기 바랍니다.
해외선물은 목표틱수만 다르므로 아래 수식에서 변경하시면 됩니다.
1 진입이 4계약이고 지정한 목표수익 도달시마다 1계약씩 청산
input : 진입수량(4),목표틱수1(5),목표틱수2(10),목표틱수3(15),목표틱수4(20);
var42 = ma(C,100);
if MarketPosition <= 0 and
TotalTrades == TotalTrades[1] and
var42 > var42[1] Then{
buy("b",OnClose,def,진입수량);
ExitLong("bx1.",atlimit,C+PriceScale*목표틱수1,"",1,1);
ExitLong("bx2.",atlimit,C+PriceScale*목표틱수2,"",1,1);
ExitLong("bx3.",atlimit,C+PriceScale*목표틱수3,"",1,1);
ExitLong("bx4.",atlimit,C+PriceScale*목표틱수4,"",1,1);
}
if MarketPosition >= 0 and
TotalTrades == TotalTrades[1] and
var42 < var42[1] Then{
sell("s",OnClose,def,진입수량);
ExitShort("sx1.",atlimit,C-PriceScale*목표틱수1,"",1,1);
ExitShort("sx2.",atlimit,C-PriceScale*목표틱수2,"",1,1);
ExitShort("sx3.",atlimit,C-PriceScale*목표틱수3,"",1,1);
ExitShort("sx4.",atlimit,C-PriceScale*목표틱수4,"",1,1);
}
if MarketPosition == 1 Then{
if highest(H,BarsSinceEntry) < EntryPrice+PriceScale*목표틱수1 Then
ExitLong("bx1",atlimit,EntryPrice+PriceScale*목표틱수1,"",1,1);
if highest(H,BarsSinceEntry) < EntryPrice+PriceScale*목표틱수2 Then
ExitLong("bx2",atlimit,EntryPrice+PriceScale*목표틱수2,"",1,1);
if highest(H,BarsSinceEntry) < EntryPrice+PriceScale*목표틱수3 Then
ExitLong("bx3",atlimit,EntryPrice+PriceScale*목표틱수3,"",1,1);
if highest(H,BarsSinceEntry) < EntryPrice+PriceScale*목표틱수4 Then
ExitLong("bx4",atlimit,EntryPrice+PriceScale*목표틱수4,"",1,1);
}
if MarketPosition == -1 Then{
if Lowest(L,BarsSinceEntry) > EntryPrice-PriceScale*목표틱수1 Then
ExitShort("sx1",atlimit,EntryPrice-PriceScale*목표틱수1,"",1,1);
if Lowest(L,BarsSinceEntry) > EntryPrice-PriceScale*목표틱수2 Then
ExitShort("sx2",atlimit,EntryPrice-PriceScale*목표틱수2,"",1,1);
if Lowest(L,BarsSinceEntry) > EntryPrice-PriceScale*목표틱수3 Then
ExitShort("sx3",atlimit,EntryPrice-PriceScale*목표틱수3,"",1,1);
if Lowest(L,BarsSinceEntry) > EntryPrice-PriceScale*목표틱수4 Then
ExitShort("sx4",atlimit,EntryPrice-PriceScale*목표틱수4,"",1,1);
}
2. 진입이 5계약이고 지정한 목표수익 도달시마다 1계약씩 청산
input : 진입수량(5),목표틱수1(5),목표틱수2(10),목표틱수3(15),목표틱수4(20),목표틱수5(20);
var42 = ma(C,100);
if MarketPosition <= 0 and
TotalTrades == TotalTrades[1] and
var42 > var42[1] Then{
buy("b",OnClose,def,진입수량);
ExitLong("bx1.",atlimit,C+PriceScale*목표틱수1,"",1,1);
ExitLong("bx2.",atlimit,C+PriceScale*목표틱수2,"",1,1);
ExitLong("bx3.",atlimit,C+PriceScale*목표틱수3,"",1,1);
ExitLong("bx4.",atlimit,C+PriceScale*목표틱수4,"",1,1);
ExitLong("bx5.",atlimit,C+PriceScale*목표틱수5,"",1,1);
}
if MarketPosition >= 0 and
TotalTrades == TotalTrades[1] and
var42 < var42[1] Then{
sell("s",OnClose,def,진입수량);
ExitShort("sx1.",atlimit,C-PriceScale*목표틱수1,"",1,1);
ExitShort("sx2.",atlimit,C-PriceScale*목표틱수2,"",1,1);
ExitShort("sx3.",atlimit,C-PriceScale*목표틱수3,"",1,1);
ExitShort("sx4.",atlimit,C-PriceScale*목표틱수4,"",1,1);
ExitShort("sx5.",atlimit,C-PriceScale*목표틱수5,"",1,1);
}
if MarketPosition == 1 Then{
if highest(H,BarsSinceEntry) < EntryPrice+PriceScale*목표틱수1 Then
ExitLong("bx1",atlimit,EntryPrice+PriceScale*목표틱수1,"",1,1);
if highest(H,BarsSinceEntry) < EntryPrice+PriceScale*목표틱수2 Then
ExitLong("bx2",atlimit,EntryPrice+PriceScale*목표틱수2,"",1,1);
if highest(H,BarsSinceEntry) < EntryPrice+PriceScale*목표틱수3 Then
ExitLong("bx3",atlimit,EntryPrice+PriceScale*목표틱수3,"",1,1);
if highest(H,BarsSinceEntry) < EntryPrice+PriceScale*목표틱수4 Then
ExitLong("bx4",atlimit,EntryPrice+PriceScale*목표틱수4,"",1,1);
if highest(H,BarsSinceEntry) < EntryPrice+PriceScale*목표틱수5 Then
ExitLong("bx5",atlimit,EntryPrice+PriceScale*목표틱수5,"",1,1);
}
if MarketPosition == -1 Then{
if Lowest(L,BarsSinceEntry) > EntryPrice-PriceScale*목표틱수1 Then
ExitShort("sx1",atlimit,EntryPrice-PriceScale*목표틱수1,"",1,1);
if Lowest(L,BarsSinceEntry) > EntryPrice-PriceScale*목표틱수2 Then
ExitShort("sx2",atlimit,EntryPrice-PriceScale*목표틱수2,"",1,1);
if Lowest(L,BarsSinceEntry) > EntryPrice-PriceScale*목표틱수3 Then
ExitShort("sx3",atlimit,EntryPrice-PriceScale*목표틱수3,"",1,1);
if Lowest(L,BarsSinceEntry) > EntryPrice-PriceScale*목표틱수4 Then
ExitShort("sx4",atlimit,EntryPrice-PriceScale*목표틱수4,"",1,1);
if Lowest(L,BarsSinceEntry) > EntryPrice-PriceScale*목표틱수5 Then
ExitShort("sx5",atlimit,EntryPrice-PriceScale*목표틱수5,"",1,1);
}
즐거운 하루되세요
> 곽민수 님이 쓴 글입니다.
> 제목 : 문의드립니다
> 1.
var42 = ma(C,100);
if var42 > var42[1] Then
buy();
if var42 < var42[1] Then
sell();
국선.해외에 대입을해볼려고합니다
1. 국선(0.5) 1틱
위 지표에 계약수는 총4계약
매수,매도에 무조건 총4개에 대한 진입
매수신호 후 1계약 5틱청산 2계약 10틱청산 3계약 15틱청산 4계약 20틱청산
스위칭은 무조건 반대로 총4개
외부변수 가 필요할듯싶습니다 (1계약,2계약,3계약,4계약) 조절가능하게
2. 해외선물
위 1번과 같지만
1계약 10틱청산 2계약 20틱청산 3계약 30틱청산 4계약 50틱청산
스위칭은 무조건 반대로 총4개
위와같이 외부변수가 필요할듯싶습니다
3. 위 2가지다 추가 했으면하는 수식
목표수익 을 외부변수가능한 수식을 따로 하나 적어주시기를바랍니다
바로 복사해서 추가만 할수있는 수식
밑에 해주셧던 수식을 알고있습니다 ...
하지만 제가 대입을 해보니.. 오류가 발생하는 부분이라서
다시한번부탁드립니다
감사합니다.
다음글
이전글