커뮤니티
시스템식 부탁..
2009-06-02 08:27:26
697
글번호 22505
폿옵션 차트 하나, 콜옵션 차트 하나를 띄워놓고 아래와 같은 수식을 각 적용하여 옵션 분봉 매수전용거래를 하고 있습니다.
그런데 다음과 같은 내용을 수식으로 추가하고자 합니다.
메일(aceace77@hamail.net)로 답변 부탁드립니다.
- 다음 -
간단하게 말씀드려서, 콜이든 풋이든 3개를 매수한 후 제일 마지막 매수분을 ‘이익보존’으로 매수청산하게 되면 아래 식을 그대로 적용하고, 제일 마지막 매수분을 ‘손절매’로 매수청산하게 되면 "즉시" 반대 종목(그러니까, 콜을 매수했다가 제일 마지막 매수분을 ‘손절매’로 매수청산했다면 풋을)을 아래 식대로 거래하고자 합니다.
그러니까 'If c>var2 and c>var4' 이 수식에 구애받지 않고 "즉시"(정확히는 "봉완성시") 매수하고자 합니다.
예를 들어, 풋 170을 3개 매수했다가 첫 번째는 이익보존, 두 번째는 손절매, 세 번째도 손절매로 매수청산이 이뤄진다 하더라도 아래 식대로라면 차트상 콜 180에 매수 신호가 오기까지는 풋이 더 하락한 후 그 방향이 지속된 후 한참뒤에야 가능한데, 그러지 말고 풋 170 2개 매수청산후 남은 1개가 ‘손절매’로 매수청산되면 "즉시" 'If c>var2 and c>var4'이런 수식에 구애받지 않고 무조건 콜 180 매수진입하고자 합니다. 청산은 아래 수식대로 적용코자 합니다.
그렇게 하려면 보조차트를 띄워야 겠지요? 즉, 주차트 풋170 그 아래 보조차트 콜 180짜리 하나, 주차트 콜180 그 아래 보조차트 풋170짜리 하나 이렇게 두개를 띄워놓고 하면 되겠지요?
--------------------------------------------------------------------
input : ts(8),ts2(6.5),ts3(5),fl(10),fl2(15),fl3(20),sp(5),sp1(7.5),sp2(10);
var : maxp(0),count(0),cnt(0);
count = 0;
for cnt = 0 to 10{
if sdate == EntryDate(cnt) Then
count = count +1;
}
if sTime==091900 Then
var2=H;
if sTime==093400 Then
Var4=H;
if MarketPosition() == 0 and count<1 Then{
if stime>093400 and stime<110000 Then
If c>var2 and c>var4 and c>o Then
buy("매수",onclose,def,3);
}
MaxP = Highest(H, BarsSinceEntry + 1);
If marketPosition() == 1 Then {
ExitLong("이익보존0", AtLimit, EntryPrice*1.08,def,1);
If MaxP >= (EntryPrice * (1+fl/100)) and MaxP < (EntryPrice * (1+fl2/100)) Then
ExitLong("이익보존1", Atstop, MaxP *(1-ts/100),def,1);
If MaxP >= (EntryPrice * (1+fl2/100)) and MaxP < (EntryPrice * (1+fl3/100)) Then
ExitLong("이익보존2", Atstop, MaxP *(1-ts2/100),def,2);
If MaxP >= (EntryPrice * (1+fl3/100)) Then
ExitLong("이익보존3", Atstop, MaxP *(1-ts3/100),def,2);
}
If marketPosition() == 1 Then {
ExitLong("손절매1", Atstop, EntryPrice*(1-sp/100),def,1);
ExitLong("손절매2", Atstop, EntryPrice*(1-sp1/100),def,1);
ExitLong("손절매3", Atstop, EntryPrice*(1-sp2/100),def,2);
}
If marketPosition() == 1 Then {
if stime==110000 Then
ExitLong("당일청산",onclose,def);
}
--------------------------------------------------------------------
답변 1
예스스탁 예스스탁 답변
2009-06-02 13:10:23
> 송사범 님이 쓴 글입니다.
> 제목 : 시스템식 부탁..
> 폿옵션 차트 하나, 콜옵션 차트 하나를 띄워놓고 아래와 같은 수식을 각 적용하여 옵션 분봉 매수전용거래를 하고 있습니다.
그런데 다음과 같은 내용을 수식으로 추가하고자 합니다.
메일(aceace77@hamail.net)로 답변 부탁드립니다.
- 다음 -
간단하게 말씀드려서, 콜이든 풋이든 3개를 매수한 후 제일 마지막 매수분을 ‘이익보존’으로 매수청산하게 되면 아래 식을 그대로 적용하고, 제일 마지막 매수분을 ‘손절매’로 매수청산하게 되면 "즉시" 반대 종목(그러니까, 콜을 매수했다가 제일 마지막 매수분을 ‘손절매’로 매수청산했다면 풋을)을 아래 식대로 거래하고자 합니다.
그러니까 'If c>var2 and c>var4' 이 수식에 구애받지 않고 "즉시"(정확히는 "봉완성시") 매수하고자 합니다.
예를 들어, 풋 170을 3개 매수했다가 첫 번째는 이익보존, 두 번째는 손절매, 세 번째도 손절매로 매수청산이 이뤄진다 하더라도 아래 식대로라면 차트상 콜 180에 매수 신호가 오기까지는 풋이 더 하락한 후 그 방향이 지속된 후 한참뒤에야 가능한데, 그러지 말고 풋 170 2개 매수청산후 남은 1개가 ‘손절매’로 매수청산되면 "즉시" 'If c>var2 and c>var4'이런 수식에 구애받지 않고 무조건 콜 180 매수진입하고자 합니다. 청산은 아래 수식대로 적용코자 합니다.
그렇게 하려면 보조차트를 띄워야 겠지요? 즉, 주차트 풋170 그 아래 보조차트 콜 180짜리 하나, 주차트 콜180 그 아래 보조차트 풋170짜리 하나 이렇게 두개를 띄워놓고 하면 되겠지요?
--------------------------------------------------------------------
input : ts(8),ts2(6.5),ts3(5),fl(10),fl2(15),fl3(20),sp(5),sp1(7.5),sp2(10);
var : maxp(0),count(0),cnt(0);
count = 0;
for cnt = 0 to 10{
if sdate == EntryDate(cnt) Then
count = count +1;
}
if sTime==091900 Then
var2=H;
if sTime==093400 Then
Var4=H;
if MarketPosition() == 0 and count<1 Then{
if stime>093400 and stime<110000 Then
If c>var2 and c>var4 and c>o Then
buy("매수",onclose,def,3);
}
MaxP = Highest(H, BarsSinceEntry + 1);
If marketPosition() == 1 Then {
ExitLong("이익보존0", AtLimit, EntryPrice*1.08,def,1);
If MaxP >= (EntryPrice * (1+fl/100)) and MaxP < (EntryPrice * (1+fl2/100)) Then
ExitLong("이익보존1", Atstop, MaxP *(1-ts/100),def,1);
If MaxP >= (EntryPrice * (1+fl2/100)) and MaxP < (EntryPrice * (1+fl3/100)) Then
ExitLong("이익보존2", Atstop, MaxP *(1-ts2/100),def,2);
If MaxP >= (EntryPrice * (1+fl3/100)) Then
ExitLong("이익보존3", Atstop, MaxP *(1-ts3/100),def,2);
}
If marketPosition() == 1 Then {
ExitLong("손절매1", Atstop, EntryPrice*(1-sp/100),def,1);
ExitLong("손절매2", Atstop, EntryPrice*(1-sp1/100),def,1);
ExitLong("손절매3", Atstop, EntryPrice*(1-sp2/100),def,2);
}
If marketPosition() == 1 Then {
if stime==110000 Then
ExitLong("당일청산",onclose,def);
}
--------------------------------------------------------------------
다음글
이전글