커뮤니티

문의

프로필 이미지
목마와숙녀
2023-12-19 10:39:29
877
글번호 174982
답변완료

첨부 이미지

진입시간 세팅이 진입시간1(090000), 진입시간2(100000) 이면 10시 이후에 진입해야 하는데 시뮬레이션 값은 09시에서 10시사이에 진입이 상당수 발생합니다.(첨부파일참조) 진입시간2 까지 봉을 모두 세고 계산한 ba의 최빈값을 구한 후 진입하는 수식이므로 10시 이후에 진입이 발생해야 합니다. 수식 살펴주십시요. *************************************************************************** 안녕하세요 예스스탁입니다. 진입이후 지정한 봉수일때만 체크하시는 내용이면 작성하신 내용이 맞습니다 즐거운 하루되세요 > 목마와숙녀 님이 쓴 글입니다. > 제목 : Re : Re : 문의 > 답변 고맙습니다. 진입이후 발생한 봉수(청산봉수) 카운트 내용이 빠진 것 같습니다. if MarketPosition == 1 Then { m2 = mode(ba,BarsSinceEntry,1); if BarsSinceEntry == 청산봉수 and ba<m2 then exitlong("x"); } 바르게 한 것인지 살펴주십시요. > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 문의 > 안녕하세요 예스스탁입니다. input : 진입시간1(094500), 진입시간2(104500); input : 청산봉수(30); var : ba(0,data1), m1(0,data1), m2(0,data1); var : Tcond(false,Data1),ii(0,Data1); ba = data2(c)-data3(c); if (sdate != sdate[1] and stime >= 진입시간1) or (sdate == sdate[1] and stime >= 진입시간1 and stime[1] < 진입시간1) Then { Tcond = true; ii = 0; } if (sdate != sdate[1] and stime >= 진입시간2) or (sdate == sdate[1] and stime >= 진입시간2 and stime[1] < 진입시간2) Then { Tcond = False; } if Tcond == true Then { ii = ii +1; m1 = mode(ba,ii,1); if ba>m1 then buy("b"); } if MarketPosition == 1 Then { m2 = mode(ba,BarsSinceEntry,1); if ba<m2 then exitlong("x"); } 즐거운 하루되세요 > 목마와숙녀 님이 쓴 글입니다. > 제목 : 문의 > 베이시스를 이용한 수식입니다. 입력한 시간동안 발생한 봉의 갯수를 세고 베이시스 최빈값 (m1)을 구합니다. 최빈값을 상승 돌파하면 buy ex) 094500 ~ 104500 1분봉이며 60개를 모두 세고 최빈값을 구합니다. 진입이후 발생한 봉의 갯수를 세고 베이시스 최빈값(m2)을 구합니다. 최빈값을 하락 돌파하면 exitlong 아래 수식을 완성하여 주십시요. 항상 감사합니다. ********************************************************************************************** input : 진입시간1(094500), 진입시간2(104500); input : 청산봉수(30); input : ba(0,data1), m1(0,data1), m2(0,data1); ba=data2(c)-data3(c); if 진입시간1 and 진입시간2 and ba>m1 then buy("b"); if 청산봉수 and ba<m2 then exitlong("x");
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2023-12-19 16:35:59

안녕하세요 예스스탁입니다. 진입시간1과 2사이로 되어 있었습니다. 진입시간2 이후로 수정해 드립니다 input : 진입시간1(094500), 진입시간2(104500); input : 청산봉수(30); var : ba(0,data1), m1(0,data1), m2(0,data1); var : Tcond(false,Data1),ii(0,Data1); ba = data2(c)-data3(c); if (sdate != sdate[1] and stime >= 진입시간1) or (sdate == sdate[1] and stime >= 진입시간1 and stime[1] < 진입시간1) Then { Tcond = true; ii = 0; } if (sdate != sdate[1] and stime >= 진입시간2) or (sdate == sdate[1] and stime >= 진입시간2 and stime[1] < 진입시간2) Then { Tcond = False; } if Tcond == true Then { ii = ii +1; m1 = mode(ba,ii,1); } if ba>m1 and sTime >= 진입시간2 then buy("b"); if MarketPosition == 1 Then { m2 = mode(ba,BarsSinceEntry,1); if BarsSinceEntry == 청산봉수 and ba<m2 then exitlong("x"); } 즐거운 하루되세요 > 목마와숙녀 님이 쓴 글입니다. > 제목 : 문의 > 진입시간 세팅이 진입시간1(090000), 진입시간2(100000) 이면 10시 이후에 진입해야 하는데 시뮬레이션 값은 09시에서 10시사이에 진입이 상당수 발생합니다.(첨부파일참조) 진입시간2 까지 봉을 모두 세고 계산한 ba의 최빈값을 구한 후 진입하는 수식이므로 10시 이후에 진입이 발생해야 합니다. 수식 살펴주십시요. *************************************************************************** 안녕하세요 예스스탁입니다. 진입이후 지정한 봉수일때만 체크하시는 내용이면 작성하신 내용이 맞습니다 즐거운 하루되세요 > 목마와숙녀 님이 쓴 글입니다. > 제목 : Re : Re : 문의 > 답변 고맙습니다. 진입이후 발생한 봉수(청산봉수) 카운트 내용이 빠진 것 같습니다. if MarketPosition == 1 Then { m2 = mode(ba,BarsSinceEntry,1); if BarsSinceEntry == 청산봉수 and ba<m2 then exitlong("x"); } 바르게 한 것인지 살펴주십시요. > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 문의 > 안녕하세요 예스스탁입니다. input : 진입시간1(094500), 진입시간2(104500); input : 청산봉수(30); var : ba(0,data1), m1(0,data1), m2(0,data1); var : Tcond(false,Data1),ii(0,Data1); ba = data2(c)-data3(c); if (sdate != sdate[1] and stime >= 진입시간1) or (sdate == sdate[1] and stime >= 진입시간1 and stime[1] < 진입시간1) Then { Tcond = true; ii = 0; } if (sdate != sdate[1] and stime >= 진입시간2) or (sdate == sdate[1] and stime >= 진입시간2 and stime[1] < 진입시간2) Then { Tcond = False; } if Tcond == true Then { ii = ii +1; m1 = mode(ba,ii,1); if ba>m1 then buy("b"); } if MarketPosition == 1 Then { m2 = mode(ba,BarsSinceEntry,1); if ba<m2 then exitlong("x"); } 즐거운 하루되세요 > 목마와숙녀 님이 쓴 글입니다. > 제목 : 문의 > 베이시스를 이용한 수식입니다. 입력한 시간동안 발생한 봉의 갯수를 세고 베이시스 최빈값 (m1)을 구합니다. 최빈값을 상승 돌파하면 buy ex) 094500 ~ 104500 1분봉이며 60개를 모두 세고 최빈값을 구합니다. 진입이후 발생한 봉의 갯수를 세고 베이시스 최빈값(m2)을 구합니다. 최빈값을 하락 돌파하면 exitlong 아래 수식을 완성하여 주십시요. 항상 감사합니다. ********************************************************************************************** input : 진입시간1(094500), 진입시간2(104500); input : 청산봉수(30); input : ba(0,data1), m1(0,data1), m2(0,data1); ba=data2(c)-data3(c); if 진입시간1 and 진입시간2 and ba>m1 then buy("b"); if 청산봉수 and ba<m2 then exitlong("x");