커뮤니티
분할매수,매수청산식..
2009-07-12 17:06:21
687
글번호 23375
아래 식을 가지고 분할매수, 매수청산식을 만들고자 합니다.
aceace77@hanamil.net로 답변 부탁드립니다.
제가 원하는 것은
매수는, 2시31분부터 3시2분까지 사이에, 2시30분봉 고가보다 크면 2개 매수하여 총 10개 매수하려고 합니다. 그러니까 횟수로는 총 5회 매수하는 셈이죠. 이럴 경우 설정창에서 피라미딩 설정을 ‘모든진입신호 허용’으로 하면 되는가요? 또는 설정창에서 제어 안하고 수식으로 만들 수는 없는가요?
매수청산은 각 회수별로 아래 수식대로 매수청산되게 하고 싶은데 가능한가요? 그러니까 편의상 1회 진입분, 2회 진입분, 3회 진입분, 4회 진입분, 5회 진입분이 있을 때, 각 진입분마다 아래 수식대로 매수청산코자 합니다. 여러 회 진입분 평균가를 기준으로 말고 말이죠.
아래 수식 가지고 안된다면 길어지더라도 가능한 방법 좀 알려주세요..
--------------------------------------------------------------------
input : ts1(8),ts2(6.5),ts3(5),fl1(10),fl2(15),fl3(20),sp1(6),sp2(8) ;
var : maxp(0);
if sTime==143000 Then
var2=H;
if stime>143100 and stime<=150200 Then{
If c>var2 and c>o Then
buy("매수",onclose,def,2);
}
MaxP = Highest(H, BarsSinceEntry + 1);
If marketPosition() == 1 Then {
If MaxP >= (EntryPrice * (1+fl1/100)) and MaxP < (EntryPrice * (1+fl2/100)) Then
ExitLong("이익보존1", Atstop, MaxP *(1-ts1/100),def,1);
If MaxP >= (EntryPrice * (1+fl2/100)) and MaxP < (EntryPrice * (1+fl3/100)) Then
ExitLong("이익보존2", Atstop, MaxP *(1-ts2/100),def,1);
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-sp1/100),def,1);
ExitLong("손절매2", Atstop, EntryPrice*(1-sp2/100),def,2);
}
If marketPosition() == 1 Then {
if stime==150300 Then
ExitLong("당일청산",onclose,def);
}
--------------------------------------------------------------------
답변 2
예스스탁 예스스탁 답변
2009-07-13 10:01:35
> 송사범 님이 쓴 글입니다.
> 제목 : 분할매수,매수청산식..
> 아래 식을 가지고 분할매수, 매수청산식을 만들고자 합니다.
aceace77@hanamil.net로 답변 부탁드립니다.
제가 원하는 것은
매수는, 2시31분부터 3시2분까지 사이에, 2시30분봉 고가보다 크면 2개 매수하여 총 10개 매수하려고 합니다. 그러니까 횟수로는 총 5회 매수하는 셈이죠. 이럴 경우 설정창에서 피라미딩 설정을 ‘모든진입신호 허용’으로 하면 되는가요? 또는 설정창에서 제어 안하고 수식으로 만들 수는 없는가요?
매수청산은 각 회수별로 아래 수식대로 매수청산되게 하고 싶은데 가능한가요? 그러니까 편의상 1회 진입분, 2회 진입분, 3회 진입분, 4회 진입분, 5회 진입분이 있을 때, 각 진입분마다 아래 수식대로 매수청산코자 합니다. 여러 회 진입분 평균가를 기준으로 말고 말이죠.
아래 수식 가지고 안된다면 길어지더라도 가능한 방법 좀 알려주세요..
--------------------------------------------------------------------
input : ts1(8),ts2(6.5),ts3(5),fl1(10),fl2(15),fl3(20),sp1(6),sp2(8) ;
var : maxp(0);
if sTime==143000 Then
var2=H;
if stime>143100 and stime<=150200 Then{
If c>var2 and c>o Then
buy("매수",onclose,def,2);
}
MaxP = Highest(H, BarsSinceEntry + 1);
If marketPosition() == 1 Then {
If MaxP >= (EntryPrice * (1+fl1/100)) and MaxP < (EntryPrice * (1+fl2/100)) Then
ExitLong("이익보존1", Atstop, MaxP *(1-ts1/100),def,1);
If MaxP >= (EntryPrice * (1+fl2/100)) and MaxP < (EntryPrice * (1+fl3/100)) Then
ExitLong("이익보존2", Atstop, MaxP *(1-ts2/100),def,1);
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-sp1/100),def,1);
ExitLong("손절매2", Atstop, EntryPrice*(1-sp2/100),def,2);
}
If marketPosition() == 1 Then {
if stime==150300 Then
ExitLong("당일청산",onclose,def);
}
--------------------------------------------------------------------
송사범
2009-07-13 10:16:56
다음 메일 수신이 안되네요..
aceace77@klac.or.kr로 다시 답변 부탁드립니다.
다음글