예스스탁
예스스탁 답변
2021-07-16 10:17:07
안녕하세요
예스스탁입니다.
input : N1(5),N2(7),N3(10);
input : 금액1(1000000),금액2(2000000),금액3(3000000);
var : cnt(0),sum1(0),mav1(0),sum2(0),mav2(0),sum3(0),mav3(0);
sum1 = 0;
For cnt = 0 to max(N1,N2,N3)
{
if cnt < N1 Then
sum1 = sum1 + DayClose(cnt);
if cnt < N2 Then
sum2 = sum2 + DayClose(cnt);
if cnt < N3 Then
sum3 = sum3 + DayClose(cnt);
}
mav1 = sum1/N1;
mav2 = sum2/N2;
mav3 = sum3/N3;
if (MarketPosition == 0 or
(MarketPosition == 1 and CountIf(CrossUp(C,mav1),BarsSinceEntry+1) < 1)) and
CrossUp(C,mav1) Then
Buy("b1",OnClose,DEF,Floor(금액1/C));
if (MarketPosition == 0 or
(MarketPosition == 1 and CountIf(CrossUp(C,mav2),BarsSinceEntry+1) < 1)) and
CrossUp(C,mav2) Then
Buy("b2",OnClose,DEF,Floor(금액2/C));
if (MarketPosition == 0 or
(MarketPosition == 1 and CountIf(CrossUp(C,mav3),BarsSinceEntry+1) < 1)) and
CrossUp(C,mav3) Then
Buy("b3",OnClose,DEF,Floor(금액3/C));
if MarketPosition == 1 Then
{
ExitLong("Bp1",AtLimit,avgEntryPrice*1.04,"",Floor(MaxContracts*0.5));
ExitLong("Bp2",AtLimit,avgEntryPrice*1.05);
ExitLong("Bl",AtStop,avgEntryPrice*0.95);
if CrossDown(c,mav1) Then
ExitLong("bx1",OnClose,DEF,"b1");
if CrossDown(c,mav2) Then
ExitLong("bx2",OnClose,DEF,"b2");
if CrossDown(c,mav3) Then
ExitLong("bx3",OnClose,DEF,"b3");
}
즐거운 하루되세요
> 맴맴잉 님이 쓴 글입니다.
> 제목 : 시스템식 문의 드립니다.
> 업무에 노고가 많으십니다. 항상 감사드립니다. (--)(__)
예전에 분봉에서 일봉상 이평선을 터치했을때 매수 하는
시스템식을 요청한적이 있었는데 아래와 같이 알려주셨습니다.
여기서 조금더 업그레이드 하고 싶어서 요청드립니다.
제가 원하는 이동평균선과 금액을 변수로 해서 매수하는 식을 요청드립니다.
예를들면 분봉차트에서 일봉5일이동평균선 100만원, 일봉7일이동평균선 200만원 매수,
일봉10일이동평균선 300만원 매수
이런식으로 작성하고 싶습니다.
예전에 요청드렸던 식을 같이 보내드립니다.
------------------------------------------------------------------------
input : N(10),금액(10000000);
var : cnt(0),sum(0),mav(0);
sum = 0;
For cnt = 0 to N-1
{
sum = sum + DayClose(cnt);
}
mav = sum/N;
if MarketPosition == 0 and CrossUp(C,mav) Then
Buy("b",OnClose,DEF,Floor(금액/C));
if MarketPosition == 1 Then
{
ExitLong("Bp1",AtLimit,avgEntryPrice*1.04,"",Floor(MaxContracts*0.5));
ExitLong("Bp2",AtLimit,avgEntryPrice*1.05);
ExitLong("Bl",AtStop,avgEntryPrice*0.95);
if CrossDown(c,mav) Then
ExitLong("bx");
}
--------------------------------------------------------------------------
감사합니다.