커뮤니티
수식수정부탁드립니다.
2018-06-07 21:45:44
252
글번호 119569
아래는 이미 답변받은 수식인데 설명이 부족하여 원하는수식의 작성이 안됐습니다.
if dayopen >= value1 and idx <= ndate+5 Then 여기서
아마도 시초가가 value1 이상인 경우에만 동작해서 그런것 같은데
1차매수가 진행된 날에 한해서만 2차매수가 진행되며
1차매수 후 그다음날 시초가가 value1이하이면서 2차매수 가격대가 오면 매수주문이
안됩니다.
설명이 미흡해서 그런것 같습니다. 죄송합니다.
다시 조건을 적어보면...
==================================================================================
5거래일이내에 가장 최근의 전일종가대비 10%이상 상승마감한 캔들에서
전일종가 < 당일저가 인경우 전일종가~당일종가까지 4등분선
전일종가 > 당일저가 인경우 당일저가~당일종가까지 4등분선을 기준으로
시초가가 1번선 이상일경우 2번선에서 매수, 3%수익실현
2번선에서 매수 후 하락시 3번선에서 추가매수, 1.5% 수익실현
(당일에만 추가매수가 아닌 거래일이 지나더라도 5거래일 이내라면 추가매수)
2차매수까지 진행된경우 4번선에서 손절
시초가가 1번선 아래, 2번선 이상인경우는 3번선에서 매수 ,3%수익실현
3번선에서 매수후 하락시 4번선에서 추가매수, 1.5% 수익실현
(당일에만 추가매수가 아닌 거래일이 지나더라도 5거래일 이내라면 추가매수)
2차매수까지 진행된경우 5번선에서 손절
2번선에서 한번이라도 매수진행된 경우 2번선은 재진입 금지
3번선에서 한번이라도 매수진행된 경우 3번선은 재진입 금지
==============================================================================
var : idx(0),ndate(0),maxv(0),minv(0),midv(0);
if bdate != bdate[1] Then{
idx = idx+1;
if DayClose(1) >= DayClose(2)*1.10 Then
{
ndate = idx;
var1 = min(DayLow(1),DayClose(2));
maxv = max(DayClose(1),var1);
minv = min(DayClose(1),var1);
midv = (maxv+minv)/2;
value1 = maxv;
value2 = (maxv+midv)/2;
value3 = midv;
value4 = (midv+minv)/2;
value5 = minv;
}
}
if dayopen >= value1 and idx <= ndate+5 Then
{
if MarketPosition == 0 then
buy("b11",atlimit,value2);
if MarketPosition == 1 and MaxEntries == 1 Then
buy("b12",atlimit,value3);
if MarketPosition == 1 and MaxEntries == 2 Then
ExitLong("bl1",AtStop,value4);
}
if dayopen < value1 and dayopen >= value2 and idx <= ndate+5 Then
{
if MarketPosition == 0 then
buy("b21",atlimit,value3);
if MarketPosition == 1 and MaxEntries == 1 Then
buy("b22",atlimit,value4);
if MarketPosition == 1 and MaxEntries == 2 Then
ExitLong("bl2",AtStop,value5);
}
if MarketPosition == 1 Then
{
if MaxEntries == 1 Then
ExitLong("bp1",atlimit,avgEntryPrice*1.03);
if MaxEntries == 2 Then
ExitLong("bp2",atlimit,avgEntryPrice*1.015);
}
> 5거래일이내에 가장 최근의 전일종가대비 10%이상 상승마감한 캔들에서
전일종가 < 당일저가 인경우 전일종가~당일종가까지 4등분선
전일종가 > 당일저가 인경우 당일저가~당일종가까지 4등분선을 기준으로
시초가가 1번선 이상일경우 2번선에서 매수, 3%수익실현
2번선에서 매수 후 하락시 3번선에서 추가매수, 1.5% 수익실현
2차매수까지 진행된경우 4번선에서 손절
시초가가 1번선 아래, 2번선 이상인경우는 3번선에서 매수 ,3%수익실현
3번선에서 매수후 하락시 4번선에서 추가매수, 1.5% 수익실현
2차매수까진 진행된 경우 5번선에서 손절하는 수식 부탁드립니다.
답변 1
예스스탁 예스스탁 답변
2018-06-08 19:48:47
안녕하세요
예스스탁입니다.
var : idx(0),ndate(0),maxv(0),minv(0),midv(0);
if bdate != bdate[1] Then
{
idx = idx+1;
if DayClose(1) >= DayClose(2)*1.10 Then
{
ndate = idx;
var1 = min(DayLow(1),DayClose(2));
maxv = max(DayClose(1),var1);
minv = min(DayClose(1),var1);
midv = (maxv+minv)/2;
value1 = maxv;
value2 = (maxv+midv)/2;
value3 = midv;
value4 = (midv+minv)/2;
value5 = minv;
}
}
if dayopen >= value1 and idx <= ndate+5 and MarketPosition == 0 then
buy("b11",atlimit,value2);
if MarketPosition == 1 and
IsEntryName("b11") == true and
idx <= idx[BarsSinceEntry]+5 then
{
if MaxEntries == 1 Then
buy("b12",atlimit,value3);
if MaxEntries == 2 Then
ExitLong("bl1",AtStop,value4);
}
if dayopen < value1 and dayopen >= value2 and idx <= ndate+5 and MarketPosition == 0 then
buy("b21",atlimit,value3);
if MarketPosition == 1 and
IsEntryName("b12") == true and
idx <= idx[BarsSinceEntry]+5 then
{
if MaxEntries == 1 Then
buy("b22",atlimit,value4);
if MaxEntries == 2 Then
ExitLong("bl2",AtStop,value5);
}
if MarketPosition == 1 Then
{
if MaxEntries == 1 Then
ExitLong("bp1",atlimit,avgEntryPrice*1.03);
if MaxEntries == 2 Then
ExitLong("bp2",atlimit,avgEntryPrice*1.015);
}
즐거운 하루되세요
> jba 님이 쓴 글입니다.
> 제목 : 수식수정부탁드립니다.
> 아래는 이미 답변받은 수식인데 설명이 부족하여 원하는수식의 작성이 안됐습니다.
if dayopen >= value1 and idx <= ndate+5 Then 여기서
아마도 시초가가 value1 이상인 경우에만 동작해서 그런것 같은데
1차매수가 진행된 날에 한해서만 2차매수가 진행되며
1차매수 후 그다음날 시초가가 value1이하이면서 2차매수 가격대가 오면 매수주문이
안됩니다.
설명이 미흡해서 그런것 같습니다. 죄송합니다.
다시 조건을 적어보면...
==================================================================================
5거래일이내에 가장 최근의 전일종가대비 10%이상 상승마감한 캔들에서
전일종가 < 당일저가 인경우 전일종가~당일종가까지 4등분선
전일종가 > 당일저가 인경우 당일저가~당일종가까지 4등분선을 기준으로
시초가가 1번선 이상일경우 2번선에서 매수, 3%수익실현
2번선에서 매수 후 하락시 3번선에서 추가매수, 1.5% 수익실현
(당일에만 추가매수가 아닌 거래일이 지나더라도 5거래일 이내라면 추가매수)
2차매수까지 진행된경우 4번선에서 손절
시초가가 1번선 아래, 2번선 이상인경우는 3번선에서 매수 ,3%수익실현
3번선에서 매수후 하락시 4번선에서 추가매수, 1.5% 수익실현
(당일에만 추가매수가 아닌 거래일이 지나더라도 5거래일 이내라면 추가매수)
2차매수까지 진행된경우 5번선에서 손절
2번선에서 한번이라도 매수진행된 경우 2번선은 재진입 금지
3번선에서 한번이라도 매수진행된 경우 3번선은 재진입 금지
==============================================================================
var : idx(0),ndate(0),maxv(0),minv(0),midv(0);
if bdate != bdate[1] Then{
idx = idx+1;
if DayClose(1) >= DayClose(2)*1.10 Then
{
ndate = idx;
var1 = min(DayLow(1),DayClose(2));
maxv = max(DayClose(1),var1);
minv = min(DayClose(1),var1);
midv = (maxv+minv)/2;
value1 = maxv;
value2 = (maxv+midv)/2;
value3 = midv;
value4 = (midv+minv)/2;
value5 = minv;
}
}
if dayopen >= value1 and idx <= ndate+5 Then
{
if MarketPosition == 0 then
buy("b11",atlimit,value2);
if MarketPosition == 1 and MaxEntries == 1 Then
buy("b12",atlimit,value3);
if MarketPosition == 1 and MaxEntries == 2 Then
ExitLong("bl1",AtStop,value4);
}
if dayopen < value1 and dayopen >= value2 and idx <= ndate+5 Then
{
if MarketPosition == 0 then
buy("b21",atlimit,value3);
if MarketPosition == 1 and MaxEntries == 1 Then
buy("b22",atlimit,value4);
if MarketPosition == 1 and MaxEntries == 2 Then
ExitLong("bl2",AtStop,value5);
}
if MarketPosition == 1 Then
{
if MaxEntries == 1 Then
ExitLong("bp1",atlimit,avgEntryPrice*1.03);
if MaxEntries == 2 Then
ExitLong("bp2",atlimit,avgEntryPrice*1.015);
}
> 5거래일이내에 가장 최근의 전일종가대비 10%이상 상승마감한 캔들에서
전일종가 < 당일저가 인경우 전일종가~당일종가까지 4등분선
전일종가 > 당일저가 인경우 당일저가~당일종가까지 4등분선을 기준으로
시초가가 1번선 이상일경우 2번선에서 매수, 3%수익실현
2번선에서 매수 후 하락시 3번선에서 추가매수, 1.5% 수익실현
2차매수까지 진행된경우 4번선에서 손절
시초가가 1번선 아래, 2번선 이상인경우는 3번선에서 매수 ,3%수익실현
3번선에서 매수후 하락시 4번선에서 추가매수, 1.5% 수익실현
2차매수까진 진행된 경우 5번선에서 손절하는 수식 부탁드립니다.