커뮤니티
수식 수정부탁합니다~
2011-07-07 23:40:00
693
글번호 40682
수식 수정부탁합니당~
항상 감사합니다
short 이라는 사용자 지표가 있습니다.
1분봉 차트에서 >>
-첫 번째 봉의 사용자 지표값이 0이냐 1이상이냐 로 크게 나뉩니다.
매수 후 대응은 공통입니다.
매수조건(공통)
- 전일 거래대금 50억 이상
- 첫봉의 신호에 매수 진입하지 않음
- 지표값이 하루(9시부터 현재까지) 중 최고가
- 신호 발생봉의 종가가 하루(9시부터 현재까지) 동안의 종가 중 최저가
- 신호 발생봉의 저가와 종가의 차이가 2% 이상일 때 매수 하지 않음
- 2시 이후에는 지표값 2이상, 2시 30분 이후 매수하지 않음
첫봉의 사용자 지표값이 0일 경우
- 지표값이 1이상인 신호 발생봉의 종가에 매수
첫봉의 사용자 지표값이 1이상일 경우
- 지표값이 4이상인 신호 발생봉의 종가에 매수
- 첫봉의 지표값 보다 2이상 커야함
매수진입 후 대응
한 번만 매수 진입되었을 경우
-매수한 봉이 1%(목표가) 이상 상승 했을 때, 그 봉에서 처분
-매수 진입 이후, 저가가 매수가 보다 2% 낮게 내려갈 경우 목표수익률을 0.5%로 정정
-매수한 봉의 시가와 고가가 1% 이상일 때, 그 봉의 종가에 처분
두 번 매수진입 되었을 경우
-매수 진입 후 10분동안 손절 하지 않음
매수진입 후 대응 (공통)
-매수 진입 1시간 후 강제청산
-당일 청산
input : Money1(400000),Money2(600000);
if CodeCategory == 1 Then{
var1 = int(int(Money1/C)/10)*10;
var2 = int(int(Money2/C)/10)*10;
}
if CodeCategory == 2 Then{
var1 = int(Money1/C);
var2 = int(Money2/C);
}
if CodeCategory == 6 Then{
var1 = int(Money1/(C*100000));
var2 = int(Money2/(C*100000));
}
if short>=1 Then
buy("b",OnClose,def,var1);
If MarketPosition==1 and CurrentEntries == 1 Then
buy("bb",AtLimit,EntryPrice*0.97,var2);
if MarketPosition==1 and stime >= 91000 and CurrentEntries == 2 Then
exitlong("loss",AtStop,AvgEntryPrice*0.97);
#한번만 매수진입되었을 경우
if MarketPosition==1 and maxEntries == 1 Then
exitlong("Profit1",AtLimit,EntryPrice*1.01);
#두번 매수진입되었을 경우
if MarketPosition==1 and MaxEntries == 2 Then
exitlong("Profit2",AtLimit,AvgEntryPrice*1.005);
SetStopEndofday();
답변 2
예스스탁 예스스탁 답변
2011-07-08 19:23:46
안녕하세요? 예스스탁입니다.
식이 복잡해서 작성하는데, 시간이 좀 걸릴것 같습니다.
월요일에 추가로 답변드리겠습니다.
감사합니다.
> 데미안리 님이 쓴 글입니다.
> 제목 : 수식 수정부탁합니다~
> 수식 수정부탁합니당~
항상 감사합니다
short 이라는 사용자 지표가 있습니다.
1분봉 차트에서 >>
-첫 번째 봉의 사용자 지표값이 0이냐 1이상이냐 로 크게 나뉩니다.
매수 후 대응은 공통입니다.
매수조건(공통)
- 전일 거래대금 50억 이상
- 첫봉의 신호에 매수 진입하지 않음
- 지표값이 하루(9시부터 현재까지) 중 최고가
- 신호 발생봉의 종가가 하루(9시부터 현재까지) 동안의 종가 중 최저가
- 신호 발생봉의 저가와 종가의 차이가 2% 이상일 때 매수 하지 않음
- 2시 이후에는 지표값 2이상, 2시 30분 이후 매수하지 않음
첫봉의 사용자 지표값이 0일 경우
- 지표값이 1이상인 신호 발생봉의 종가에 매수
첫봉의 사용자 지표값이 1이상일 경우
- 지표값이 4이상인 신호 발생봉의 종가에 매수
- 첫봉의 지표값 보다 2이상 커야함
매수진입 후 대응
한 번만 매수 진입되었을 경우
-매수한 봉이 1%(목표가) 이상 상승 했을 때, 그 봉에서 처분
-매수 진입 이후, 저가가 매수가 보다 2% 낮게 내려갈 경우 목표수익률을 0.5%로 정정
-매수한 봉의 시가와 고가가 1% 이상일 때, 그 봉의 종가에 처분
두 번 매수진입 되었을 경우
-매수 진입 후 10분동안 손절 하지 않음
매수진입 후 대응 (공통)
-매수 진입 1시간 후 강제청산
-당일 청산
input : Money1(400000),Money2(600000);
if CodeCategory == 1 Then{
var1 = int(int(Money1/C)/10)*10;
var2 = int(int(Money2/C)/10)*10;
}
if CodeCategory == 2 Then{
var1 = int(Money1/C);
var2 = int(Money2/C);
}
if CodeCategory == 6 Then{
var1 = int(Money1/(C*100000));
var2 = int(Money2/(C*100000));
}
if short>=1 Then
buy("b",OnClose,def,var1);
If MarketPosition==1 and CurrentEntries == 1 Then
buy("bb",AtLimit,EntryPrice*0.97,var2);
if MarketPosition==1 and stime >= 91000 and CurrentEntries == 2 Then
exitlong("loss",AtStop,AvgEntryPrice*0.97);
#한번만 매수진입되었을 경우
if MarketPosition==1 and maxEntries == 1 Then
exitlong("Profit1",AtLimit,EntryPrice*1.01);
#두번 매수진입되었을 경우
if MarketPosition==1 and MaxEntries == 2 Then
exitlong("Profit2",AtLimit,AvgEntryPrice*1.005);
SetStopEndofday();
예스스탁 예스스탁 답변
2011-07-11 14:07:32
안녕하세요
예스스탁입니다.
input : Money1(400000),Money2(600000);
var : Short(0),Premoney(0),sumMoney(0);
if CodeCategory == 1 Then{
var1 = int(int(Money1/C)/10)*10;
var2 = int(int(Money2/C)/10)*10;
}
if CodeCategory == 2 Then{
var1 = int(Money1/C);
var2 = int(Money2/C);
}
if CodeCategory == 6 Then{
var1 = int(Money1/(C*100000));
var2 = int(Money2/(C*100000));
}
if date != date[1] Then
Premoney = sumMoney[1];
sumMoney = sumMoney+Money;
if PreMoney >= 5000000000 and dayindex > 0 and stime < 143000 and
Short == highest(Short,dayindex+1) and C == Lowest(C,dayindex+1) then{
if Short[dayindex] == 0 Then{#첫봉의 short값 0
if (stime < 140000 and short >= 1) or
(stime >= 140000 and short >= 2) Then
buy("b1",OnClose,def,var1);
}
if Short[dayindex] >= 1 Then{#첫봉의 short값 1이상
if (stime < 140000 and short >= 4 and short >= Short[dayindex]*2) Or
(stime >= 140000 and short >= 2 and short >= Short[dayindex]*2) Then
buy("b2",OnClose,def,var1);
}
}
#추가매수
If MarketPosition==1 and CurrentEntries == 1 Then
buy("bb",AtLimit,EntryPrice*0.97,var2);
#손절
if MarketPosition==1 and stime >= 91000 Then{
if MaxEntries == 1 Then#한번진입된 경우
exitlong("loss1",AtStop,AvgEntryPrice*0.97);
if MaxEntries == 1 and TimeToMinutes(stime) >= TimeToMinutes(EntryTime)+10 Then#두번진입된 경우는 진입후 10분 경과후
exitlong("loss2",AtStop,AvgEntryPrice*0.97);
}
#목표수익
#한번만 매수진입되었을 경우
if MarketPosition==1 and maxEntries == 1 Then{
if lowest(L,BarsSinceEntry) > EntryPrice*0.98 Then
exitlong("Profit1",AtLimit,EntryPrice*1.01);
if lowest(L,BarsSinceEntry) <= EntryPrice*0.98 Then
exitlong("Profit2",atlimit,EntryPrice*1.005);
}
#두번 매수진입되었을 경우
if MarketPosition==1 and MaxEntries == 2 Then
exitlong("Profit3",AtLimit,AvgEntryPrice*1.005);
#매수진입 후 한시간 경과후 청산
if MarketPosition == 1 then {
if TimeToMinutes(stime) >= TimeToMinutes(EntryTime)+60 Then
exitlong("timex");
}
SetStopEndofday(150000);
즐거운 하루되세요
> 데미안리 님이 쓴 글입니다.
> 제목 : 수식 수정부탁합니다~
> 수식 수정부탁합니당~
항상 감사합니다
short 이라는 사용자 지표가 있습니다.
1분봉 차트에서 >>
-첫 번째 봉의 사용자 지표값이 0이냐 1이상이냐 로 크게 나뉩니다.
매수 후 대응은 공통입니다.
매수조건(공통)
- 전일 거래대금 50억 이상
- 첫봉의 신호에 매수 진입하지 않음
- 지표값이 하루(9시부터 현재까지) 중 최고가
- 신호 발생봉의 종가가 하루(9시부터 현재까지) 동안의 종가 중 최저가
- 신호 발생봉의 저가와 종가의 차이가 2% 이상일 때 매수 하지 않음
- 2시 이후에는 지표값 2이상, 2시 30분 이후 매수하지 않음
첫봉의 사용자 지표값이 0일 경우
- 지표값이 1이상인 신호 발생봉의 종가에 매수
첫봉의 사용자 지표값이 1이상일 경우
- 지표값이 4이상인 신호 발생봉의 종가에 매수
- 첫봉의 지표값 보다 2이상 커야함
매수진입 후 대응
한 번만 매수 진입되었을 경우
-매수한 봉이 1%(목표가) 이상 상승 했을 때, 그 봉에서 처분
-매수 진입 이후, 저가가 매수가 보다 2% 낮게 내려갈 경우 목표수익률을 0.5%로 정정
-매수한 봉의 시가와 고가가 1% 이상일 때, 그 봉의 종가에 처분
두 번 매수진입 되었을 경우
-매수 진입 후 10분동안 손절 하지 않음
매수진입 후 대응 (공통)
-매수 진입 1시간 후 강제청산
-당일 청산
input : Money1(400000),Money2(600000);
if CodeCategory == 1 Then{
var1 = int(int(Money1/C)/10)*10;
var2 = int(int(Money2/C)/10)*10;
}
if CodeCategory == 2 Then{
var1 = int(Money1/C);
var2 = int(Money2/C);
}
if CodeCategory == 6 Then{
var1 = int(Money1/(C*100000));
var2 = int(Money2/(C*100000));
}
if short>=1 Then
buy("b",OnClose,def,var1);
If MarketPosition==1 and CurrentEntries == 1 Then
buy("bb",AtLimit,EntryPrice*0.97,var2);
if MarketPosition==1 and stime >= 91000 and CurrentEntries == 2 Then
exitlong("loss",AtStop,AvgEntryPrice*0.97);
#한번만 매수진입되었을 경우
if MarketPosition==1 and maxEntries == 1 Then
exitlong("Profit1",AtLimit,EntryPrice*1.01);
#두번 매수진입되었을 경우
if MarketPosition==1 and MaxEntries == 2 Then
exitlong("Profit2",AtLimit,AvgEntryPrice*1.005);
SetStopEndofday();