답변완료
78412 수식 수정부탁드립니다
안녕하세요.
작성해주신 수식 적용해보았는데
익절은 잘 작동하는거같은데
손절이 이상합니다.
매수진입봉의 종가 밑으로 내려가면 손절이 되더라구요.
수식을 살펴보면 이상이 없어보이는데.. 어디가 잘못된건지 알수가 없어서요.. 확인부탁드려요..
[시스템식]
input : P1(12), P2(26), P3(9);
var : macdValue(0), macdSignal(0), macdLow(0);
macdValue = macd(P1,P2);
macdSignal = Ema(macdValue, P3);
if CrossUp(macdValue, macdSignal) Then
      Buy();
#익절(추적청산)
if C > EntryPrice and BarsSinceEntry > 0 Then 
      ExitLong("EL_target", AtStop, highest(H,5) - ATR(14)*2);
# 손절
if MarketPosition <> 1 Then {
      if CrossDown(macdValue, macdSignal) Then
            macdLow = L;
      if macdValue <  macdSignal and L < macdLow Then
            macdLow = L;
}
if MarketPosition == 1 Then 
      ExitLong("EL_stop", AtStop, macdLow);
> 공돌이 님이 쓴 글입니다.
> 제목 : 수식부탁드려요..
> 안녕하세요.. 아래 조건에 대한 시스템 수식 부탁드립니다
1. 매수조건: macd 오실레이터가 음수에서 양수로 전환되면 매수
2. 익절: 현재 수익률이 0보다 크고 and 최근5봉 최고가에서 2×ATR(14봉 평균)을 뺀 값보다 종가가 작아지면 익절
3. 손절: macd 오실레이터가 양수로 바뀌기 전의 음수인 영역(첨부 사진에서 A영역)에서의 최저값(첨부 사진에서 A영역 최소값은 25500원)보다 종가가 작아지면 손절
[시스템식]
input : P1(12), P2(26), P3(9);
var : macdValue(0), macdSignal(0), macdLow(0);
macdValue = macd(P1,P2);
macdSignal = Ema(macdValue, P3);
if CrossUp(macdValue, macdSignal) Then
      Buy();
#익절(추적청산)
if C > EntryPrice and BarsSinceEntry > 0 Then 
      ExitLong("EL_target", AtStop, highest(H,5) - ATR(14)*2);
# 손절
if MarketPosition <> 1 Then {
      if CrossDown(macdValue, macdSignal) Then
            macdLow = L;
      if macdValue <  macdSignal and L < macdLow Then
            macdLow = L;
}
if MarketPosition == 1 Then 
      ExitLong("EL_stop", AtStop, macdLow);
> 공돌이 님이 쓴 글입니다.
> 제목 : 수식부탁드려요..
> 안녕하세요.. 아래 조건에 대한 시스템 수식 부탁드립니다
1. 매수조건: macd 오실레이터가 음수에서 양수로 전환되면 매수
2. 익절: 현재 수익률이 0보다 크고 and 최근5봉 최고가에서 2×ATR(14봉 평균)을 뺀 값보다 종가가 작아지면 익절
3. 손절: macd 오실레이터가 양수로 바뀌기 전의 음수인 영역(첨부 사진에서 A영역)에서의 최저값(첨부 사진에서 A영역 최소값은 25500원)보다 종가가 작아지면 손절
2022-08-11
1404
글번호 161431
시스템
답변완료
문의드립니다.
안녕하세요.
아래 분봉 수식에서 손절 청산이나 이익 청산시에 청산함과 동일시간에 반대포지션
진입이 되므로 반대포지션 체결이 되어야 할텐데 반대 포지션으로 실제로는
체결이 안되고 있습니다,
어떻게 해야 할까요?
수정을 부탁드립니다.
if C > 매수조건1 Then{
t=1;
if MarketPosition() == 0 and t==1 Then
buy("매수");
}
if C < 매도조건1 Then {
t=-1 ;
if MarketPosition() ==0 and t==-1 Then
Sell("매도");
}
if MarketPosition == 1 Then
{
buy("bb",AtStop,LatestEntryPrice(0)+PriceScale*매수간격);
if MaxEntries == 1 Then
ExitLong("매수1손절",AtStop,A-PriceScale*손절변수);
if MaxEntries >= 2 Then
ExitLong("bx",AtStop,B);
ExitLong("매수이익x",AtLimit,C+PriceScale*이익변수 );
}
if MarketPosition == -1 Then
{
Sell("ss",AtStop,LatestEntryPrice(0)-PriceScale*매도간격);
if MaxEntries == 1 Then
ExitShort("매도1손절",AtStop,A+PriceScale*손절변수 );
if MaxEntries >= 2 Then
ExitShort("sx",AtStop,Be);
ExitShort("매도이익",AtLimit,C-PriceScale*이익변수);
}
2022-08-11
961
글번호 161427
시스템
답변완료
시스템 창의 신호와 시스템 모니터상의 신호가 일치하지 않으며, 매매가 안됨.
안녕하세요?
아래와 같은 문제가 있어 문의 드립니다.
1. 사용 증권사 : 한국투자증권
2. 컴퓨터 상태
-. 예스트레이더
-. 구글 크롬 (넷플릭스, 구글, 유튜브, 인베스팅닷컴)
-. 엑셀
-. 윈도우 탐색기
3. 예스트레이더 상태
-. 챠트창 : 6개 창
1) 2개 데이터(Main, Sub), 1분봉, 1개 시스템 (시스템 A)
2) 2개 데이터(Main, Sub), 1분봉, 1개 시스템 (시스템 A)
3) 1개 데이터, 1분봉, 시스템 없음.
4) 1개 데이터, 5분봉, 시스템 없음.
5) 1개 데이터, 30분봉, 시스템 없음.
6) 1개 데이터, 30분봉, 시스템 없음.
* 1, 2번 창은 동일한 시스템 A가 적용되고 있으며, 내부 Parameter 가 서로 다릅니다.
* 시스템 매매는 1번창은 1계약, 2번창은 2계약, 시장가 매매입니다.
* 3번 창에서 강조 기능을 넣었고, Sound Alarm Function 이 있습니다.
-. 예수금 현황
-. 시스템 모니터
-. 호가클릭
-. 관심종목
4. 문제 사항
-. 위 예스트레이더 상의 1번창, 2번창에서 시스템 신호 발생 표기됨.
-. 시스템 모니터 상에서는 주문 내역 표기 않됨. (갈헐적으로 끊김)
-. 시스템 모니터 상에서 주문 내역 중에 원주문, 주문번호 등이 없는 신호가 있음.
-. 시스템 모니터에서 표기 되지 않은 신호에 대해서는 실제 매매 내역 없음.
5. 문의 사항
-. 시스템신호시, 시스템 모니터에 나타나지 않는 이유와 매매가 안되는 이유는 무엇인가요?
-. 이에 대한 해결책은 무엇이 있을까요?
2022-08-10
1071
글번호 161426
시스템
답변완료
지표 설정방법 문의 드립니다.
Input : Period1(5), Period2(20);
var : Sma1(0),Sma2(0);
Sma1 = ma(C,Period1);
Sma2 = ma(C,Period2);
Plot1(Sma1, "이동평균1");
Plot2(Sma2, "이동평균2");
여기에서 20일 이동평균선의 기울기가 상승할 때 빨강색, 하락할 때 파랑색으로 변하게 하고 싶습니다.
감사합니다.
2022-08-10
974
글번호 161424
지표
답변완료
볼린저밴드
안녕하세요~
볼린저밴드 문의드립니다
BBTop = BollBandup(Length, StdDev);
BBBot = BollBanddown(Length, StdDev);
If CountIF(c < BBBot, Bars) == Bars Then
상단공식과 하단공식의 결과가 다른데 이유가 무엇인지요?
Top = BollBandup(Length, StdDev);
Bot = BollBanddown(Length, StdDev);
Top1 = BollBandup(Length, StdDev)[1];
Bot1 = BollBanddown(Length, StdDev)[1];
Top2 = BollBandup(Length, StdDev)[2];
Bot2 = BollBanddown(Length, StdDev)[2];
If (c[2] < Bot2 && c[1] < Bot1) || (c[1] < Bot1 && c[0] < Bot) Then
2022-08-10
929
글번호 161410
시스템