답변완료
국내 주식 일봉차트에서 자동매매 할수 있게 수식 변환 요청합니다.
국내 주식입니다.
일봉 기준입니다. 자동매매로 거래할수 있도록 수식 변환 요청드릴께요...
일봉에서는 봉완성후 진입이라 장종료후에 진입이 되지 않는 것으로 알고 있습니다.
그러면 종가가 조건에 부합했을때 다음봉(다음날) 전일 종가(또는 낮은 값일때) 에 실시간으로 진입하는 수식 부탁드리고요
추가 매수 되는 것은 장중에 해당 값에 도달시 즉시 진입되는 수식으로 될수 있게
그리고 청산시에도 조건부합시 다음봉(다음날) 전일 종가에 실시간으로 청산 하는 수식 부탁드림니다.
정리하면
최초 매수 진입분:
다음봉에 전봉 종가 또는 낮을값일때 진입( 갭상승시 전일종가 , 갭하락시 즉시 체결)
추가매수분 :
해당 조건 충족시 즉시 진입
청산분:
다음봉에 전일종가 또는 높을때 즉시청산(갭상승일때 즉시 청산,갭하락일때 전일종가)
---------------------------------------------------------------------------------
input : 기준평균봉값(80);
input : 일차매수금액(100);
input : 이차매수금액(200);
input : 삼차매수금액(300);
input : 사차매수금액(400);
input : 오차매수금액(500);
input : 육차매수금액(600);
input : 최초진입하락폭(0.95);
input : 추가진입하락폭(0.96);
input : MFI기간(15),MFI값(85);
input : 심리도기간(15),심리도값(85);
var : mav(0,data2),MM(0,data1),SS(0,data1);
mav = data2(ma(c,기준평균봉값));
MM = data1(mfi(MFI기간));
SS = data1(Simrido(심리도기간));
if MarketPosition == 0 and data2(CrossDown(c,mav*최초진입하락폭)) then
buy("b1",OnClose,def,Floor(일차매수금액*10000/c));
if MarketPosition == 1 then
{
if MaxEntries == 1 and c<=LatestEntryPrice(0)*추가진입하락폭 then # 85
buy("b2",OnClose,def,Floor(이차매수금액*10000/c));
if MaxEntries == 2 and c<=LatestEntryPrice(0)*(추가진입하락폭-0.04) then # 80
buy("b3",OnClose,def,Floor(삼차매수금액*10000/c));
if MaxEntries == 3 and c<=LatestEntryPrice(0)*(추가진입하락폭-0.07) then # 75
buy("b4",OnClose,def,Floor(사차매수금액*10000/c));
if MaxEntries == 4 and c<=LatestEntryPrice(0)*(추가진입하락폭-0.09) then # 70
buy("b5",OnClose,def,Floor(오차매수금액*10000/c));
if MaxEntries == 5 and c<=LatestEntryPrice(0)*(추가진입하락폭-0.10) then # 65
buy("b6",OnClose,def,Floor(육차매수금액*10000/c));
if MM > MFI값 or SS > 심리도값 Then
exitlong("청산");
}
2020-06-16
2221
글번호 139859
시스템
답변완료
문의드립니다.
아래수식을 예스로 부탁합니다.
i1=input(5, "Momentum Period", minval=1) //Keep at 2 usually
i2=input(10, "Slow Period", minval=1)
i3=input(5, "Fast Period", minval=1)
i4=input(3, "Smoothing Period", minval=1)
i5=input(10, "Signal Period", minval=1)
i6=input(20, "Extreme Value", minval=1)
hiDif = high - high[1]
loDif = low[1] - low
uDM = hiDif > loDif and hiDif > 0 ? hiDif : 0
dDM = loDif > hiDif and loDif > 0 ? loDif : 0
ATR = rma(tr(true), i1)
DIu = 100 * rma(uDM, i1) / ATR
DId = 100 * rma(dDM, i1) / ATR
HLM2 = DIu - DId
DTI = (100 * ema(ema(ema(HLM2, i2), i3), i4)) / ema(ema(ema(abs(HLM2), i2), i3), i4)
signal = ema(DTI, i5)
col = DTI > DTI[1] ? green : maroon
col2 = DTI > signal ? lime : red
col3 = DTI > 0 ? teal : purple
p1=plot(DTI,title="DTI", color=col, style=area, linewidth=5, transp=10)
p2=plot(signal,title="Signal", color=col2)
p3=plot(0,title="zero", color=gray)
p4=plot(i6,title="overbought",color=purple, linewidth=5, transp=75)
p5=plot(-i6,title="oversold",color=teal, linewidth=5, transp=75)
fill(p1,p3, col3, transp=50)
fill(p1, p2, col2, transp=0)
2020-06-15
2130
글번호 139856
지표
답변완료
손절,익절, 매매중지식
(당초)
선물+옵션에서 지금까지 익절,손절을 아래와 같이 숫치로 했는데
SetStopLoss(2,PointStop);
SetStopProfittarget(3,PointStop);
SetStopEndofday(150000);
(변경)
옵션같은 경우는 진입가격이 달라져서 포인트로 표현하기가 어렵습니다.
손실율(25%손실),수익율(150%)로 구현하려면 어떻게 작성되어야 할까요?
아래와 같이는 구현이 안되는 것 같습니다.
SetStopLoss(EntryPrice*0.75,PointStop);
SetStopProfittarget(EntryPrice*3,PointStop);
SetStopEndofday(150000);
2020-06-15
2063
글번호 139845
시스템
답변완료
for, if, IFF, ATR 활용한 지표 작성 도움 요청 드립니다.
잘 모르겠는 부분을 한글로 표현했는데, 도움 요청드립니다.
- input : ATR 10일치
- var : 모르겠음
- for문 : 일봉으로 상장일부터 현재까지 반복
if 해당일이 상장일자
{ 상장일의 StateNo=1; 상장일의 InUptrend=true; 상장일의 InDntrnd=false, 상장일의 Uptrend=종가; 상장일의 Dntrend=종가; }
else
{ 해당일의 StateNo = 전일의 StateNo; 해당일의 InUptrend = 전일의 InUptrend; 해당일의 InDntrend = 전일의 InDntrend; 해당일의 Uptrend = 전일의 Uptrend; 해당일의 Dntrend = 전일의 Dntrend;}
if 전일의 StateNo=1
{
if 해당일의 종가 >= 전일의 종가
{ 해당일의 StateNo=1; 해당일의 InUptrend=true; 해당일의 InDntrend=false; 해당일의 Uptrend = 해당일의 종가 }
else
{
if 해당일의 InUptrend AND 해당일의 종가 <= 해당일의 Uptrend 곱하기 '해당일 기준 10일짜리 ATR'
{ 해당일의 StateNo=6; 해딩일의 Inuptrend=false; 해당일의 InDntrend=True, 해당일의 Dntrend = 해당일의 종가}
}
}
- WeightNo 그리기
해당일의 StateNo=1이면 WeightNo=5,빨간색
해당일의 StateNo=6이면 WeightNo=-5, 파란색
2020-06-15
2270
글번호 139842
지표