커뮤니티
문의 드립니다.
2013-10-04 15:03:21
117
글번호 68091
감사합니다.
답변 1
예스스탁 예스스탁 답변
2013-10-04 14:32:11
안녕하세요
예스스탁입니다.
1.
지표에 따라 수량증감(청산/추가진입)이 있는데
수량증감을 모두 추적해서 손익을 계산하기에는 무리가 있습니다.
아래는 지표값이 변경이 되면 전량 청산하고 해당 수량만큼 다시
매도하는 것으로 간주하고 작성한 식입니다.
아래식 참고하셔서 수정/보완하셔서 사용하시기 바랍니다.
1)
# data1 선물
# data2 콜
# data3 풋
var : C1(0,data2),CP(0,data2),CE(0,data2),CPL(0,data2);
var : P1(0,data2),PP(0,data2),PE(0,data2),PPL(0,data2);
#C1 = ~~~;
#C2 = ~~~;
if data2(dayindex == 0) Then{
CP = data2(c);
CE = C1;
CPL = 0;
}
if data2(dayindex > 0 ) Then{
if C1 != C1[1] Then{
CPL = CPL+(data2(CP-C)*CE);
}
CP = data2(c);
CE = C1;
}
if data2(dayindex == 0) Then{
PP = data3(c);
PE = C1;
PPL = 0;
}
if data2(dayindex > 0 ) Then{
if P1 != P1[1] Then{
PPL = PPL+(data2(PP-C)*PE);
}
PP = data2(c);
PE = P1;
}
plot1(CPL+PPL);
2)
# data1 선물
# data2 콜
# data3 풋
var : C1(0,data2),CP(0,data2),CE(0,data2),CPL(0,data2);
var : P1(0,data2),PP(0,data2),PE(0,data2),PPL(0,data2);
#C1 = ~~~;
#C2 = ~~~;
if data2(dayindex == 0) Then{
CP = data2(c);
CE = C1;
CPL = 0;
}
if data2(dayindex > 0 ) Then{
if C1 != C1[1] Then{
CPL = CPL+(data2(CP-C)*CE)
-data2(c)*0.0004
-CP*0.0004
-data2(iff(data2(c)>=3.0,0.025,0.005))
-data2(iff(CP>=3.0,0.025,0.005));
}
CP = data2(c);
CE = C1;
}
if data2(dayindex == 0) Then{
PP = data3(c);
PE = C1;
PPL = 0;
}
if data2(dayindex > 0 ) Then{
if P1 != P1[1] Then{
PPL = PPL+(data2(PP-C)*PE)
-data2(c)*0.0004
-CP*0.0004
-data2(iff(data2(c)>=3.0,0.025,0.005))
-data2(iff(CP>=3.0,0.025,0.005));
}
PP = data2(c);
PE = P1;
}
plot1(CPL+PPL);
2
1)
date != date[1]
2)
해당 부분은 if문으로 특정이름의 신호가 발생할때
카운트를 하여 횟수별로 값을 저장해 사용하셔야 합니다.
if date != date[1] then
var1 = 0;
if A신호 Then
buy("A신호");
if B신호 Then
buy("B신호");
if MarketPosition == 1 and BarsSinceEntry == 1 then{
if IsEntryName("신호A") == true Then{
var1 = var1+1'
if var1 == 1 Then
var2 = H[BarsSinceEntry];
if var2 == 2 Then
var3 = H[BarsSinceEntry];
}
if IsEntryName("신호B") == true Then{
var4 = H[BarsSinceEntry];
}
}
if MarketPosition == 0 and var1 >= 2 and C > var2 and C > var3 and C < var4 Then
buy();
3)
if MarketPosition == 0 Then
var1 = 0;
if MarketPosition == 1 Then
var1 = CurrentContracts;
if MarketPosition == -1 Then
var1 = -CurrentContracts;
> 에구머니 님이 쓴 글입니다.
> 제목 : 문의 드립니다.
> 감사합니다.