커뮤니티
수식 부탁해요~~
2019-01-03 01:12:04
159
글번호 124898
해외선물 5분봉에서 다음과 같이 수식에서 익절과 손절 셋팅하였는데...
1번 설정 : 진입된후 20틱 수익난후에 다시 진입가격(본전)이 될때 손절 하는 수식(조건 만족시 즉시)
2번 설정: 진입된 후 20틱 수익이나지 않은 상태에서 진입가격에 -100tick되면 봉완성여부와 상관없이 손실 청산 하는 수식
아래 수식에 각각 1번과 2번 설정에 반영 부탁드림니다.
===============================================================================
input : p1(5),p2(5),af(0.02), maxAF(0.2);
input : 익절틱수1(57),손절틱수1(50),익절틱수2(51),손절틱수2(40);
input : N1(10),N2(50);
var : cnt(0),sum1(0),sum2(0),avg1(0),avg2(0),avg3(0),T(0),mav2(0),mav3(0),value(0);
var : sum3(0),Tcond(false);
var1 = CSar(af,maxAF);
if DayClose(N2) > 0 Then
{
sum1 = 0;
sum2 = 0;
for cnt = 0 to N2-1
{
if cnt < N1 Then
sum1 = sum1 + DayClose(cnt);
if cnt < N2 Then
sum2 = sum2 + DayClose(cnt+1);
}
avg1 = sum1/N1;
avg2 = sum2/N2;
T = 0;
if avg1 >= avg2 Then
T = 1;
if avg1 < avg2 Then
T = -1;
#골드가 발생하면
if var1 > C Then
{
#value1에 봉번호 저장
value1 = index;
#value2에 종가 저장
value2 = C;
}
#데드가 발생하면
If var1 < C Then
{
#value3에 봉번호 저장
value3 = index;
#value4에 종가 저장
value4 = C;
}
if MarketPosition == 0 and
T == 1 and
index >= value1+P1 and
C > highest(H,P1)[1] and
C > value2 then
buy("매수",OnClose,def,1);
if MarketPosition == 0 and
T == -1 and
index >= value3+P2 and
C < Lowest(L,P2)[1] and
C < value4 then
Sell("매도",OnClose,def,1);
if T == 1 then
SetStopProfittarget(PriceScale*익절틱수1, PointStop);
SetStopLoss(PriceScale*손절틱수1, PointStop);
if T == -1 then
SetStopProfittarget(PriceScale*익절틱수2, PointStop);
SetStopLoss(PriceScale*손절틱수2, PointStop);
답변 1
예스스탁 예스스탁 답변
2019-01-03 14:09:12
안녕하세요
예스스탁입니다.
시스템식 하단에 아래 내용 추가하시면 됩니다.
if MarketPosition == 1 Then
{
if highest(H,BarsSinceEntry) >= EntryPrice+PriceScale*20 Then
ExitLong("bx1",AtStop,EntryPrice);
Else
ExitLong("bx2",AtStop,EntryPrice-PriceScale*100);
}
if MarketPosition == -1 Then
{
if Lowest(L,BarsSinceEntry) <= EntryPrice-PriceScale*20 Then
ExitShort("sx1",AtStop,EntryPrice);
Else
ExitShort("sx2",AtStop,EntryPrice+PriceScale*100);
}
즐거운 하루되세요
> 이형지 님이 쓴 글입니다.
> 제목 : 수식 부탁해요~~
> 해외선물 5분봉에서 다음과 같이 수식에서 익절과 손절 셋팅하였는데...
1번 설정 : 진입된후 20틱 수익난후에 다시 진입가격(본전)이 될때 손절 하는 수식(조건 만족시 즉시)
2번 설정: 진입된 후 20틱 수익이나지 않은 상태에서 진입가격에 -100tick되면 봉완성여부와 상관없이 손실 청산 하는 수식
아래 수식에 각각 1번과 2번 설정에 반영 부탁드림니다.
===============================================================================
input : p1(5),p2(5),af(0.02), maxAF(0.2);
input : 익절틱수1(57),손절틱수1(50),익절틱수2(51),손절틱수2(40);
input : N1(10),N2(50);
var : cnt(0),sum1(0),sum2(0),avg1(0),avg2(0),avg3(0),T(0),mav2(0),mav3(0),value(0);
var : sum3(0),Tcond(false);
var1 = CSar(af,maxAF);
if DayClose(N2) > 0 Then
{
sum1 = 0;
sum2 = 0;
for cnt = 0 to N2-1
{
if cnt < N1 Then
sum1 = sum1 + DayClose(cnt);
if cnt < N2 Then
sum2 = sum2 + DayClose(cnt+1);
}
avg1 = sum1/N1;
avg2 = sum2/N2;
T = 0;
if avg1 >= avg2 Then
T = 1;
if avg1 < avg2 Then
T = -1;
#골드가 발생하면
if var1 > C Then
{
#value1에 봉번호 저장
value1 = index;
#value2에 종가 저장
value2 = C;
}
#데드가 발생하면
If var1 < C Then
{
#value3에 봉번호 저장
value3 = index;
#value4에 종가 저장
value4 = C;
}
if MarketPosition == 0 and
T == 1 and
index >= value1+P1 and
C > highest(H,P1)[1] and
C > value2 then
buy("매수",OnClose,def,1);
if MarketPosition == 0 and
T == -1 and
index >= value3+P2 and
C < Lowest(L,P2)[1] and
C < value4 then
Sell("매도",OnClose,def,1);
if T == 1 then
SetStopProfittarget(PriceScale*익절틱수1, PointStop);
SetStopLoss(PriceScale*손절틱수1, PointStop);
if T == -1 then
SetStopProfittarget(PriceScale*익절틱수2, PointStop);
SetStopLoss(PriceScale*손절틱수2, PointStop);
다음글
이전글