답변완료
답변주신 시스템 수식 추가좀 부탁드리겠습니다.
기존 문의에대한 수식 잘받았습니다.
여기에
ADX를 추가하고싶습니다.
예스트레이더기준
1.+DI가 -DI보다 높을때 기존 수식을 실행한다
2.-DI가 +DI보다 낮을때 기존 수식을 실행하지않는다.
남아있는 매수신호가 있을시 모두 청산한다
이부분을 추가해서 부탁좀드리겠습니다.
매번감사합니다.
-------------------------------------------------------
안녕하세요
예스스탁입니다.
피라미딩을 다른진입신호만 허용으로 설정하고 적용하시면 됩니다.
Input : short(12), long(26), signal(9);
Input : Period(9);
var : RSIV(0),MACDV(0) , MACDS(0) ;
MACDV = MACD(short, long);
MACDS = ema(MACDV,signal);
RSIV = RSI(Period);
if CrossUp(macdv,macds) Then
Buy("Macd signal Up");
if CrossUp(macdv,0) Then
Buy("Macd 0 Up");
if CrossUp(rsiv,30) Then
Buy("Rsi Up");
if CrossDown(macdv,macds) Then
Sell("Macd signal Down");
if CrossDown(macdv,0) Then
Sell("Macd 0 Down");
if CrossDown(rsiv,30) Then
Sell("Rsi Dwon");
즐거운 하루되세요
> 좀잘해보자 님이 쓴 글입니다.
> 제목 : 시스템 수식좀 부탁드리겠습니다.
> 이시스템 수식 좀 만들어주실수일을까요??
buy
1.macd가 macd signal 돌파
2.macd가 0을돌파
3.rsi 35돌파
이중1개라도 신호가올시 매수
(1개만 매수신호가오는게아니라 1번신호 1차매수,2번신호2차매수, 3번신호 3차매수
이렇게 매수신호가 세개가뜨도록 부탁드립니다.)-매도도마찬가지
단, 1번의경우 macd signal
2번의경우 macd 0
3번의경우 rsi up
로 매수표시
sell
macd signal가 macd 크로스
macd가 0을 내려감
rsi 70에서 내려옴
단, 1번의경우 macd signal
2번의경우 macd 0
3번의경우 rsi down
로 매수표시
이렇게 가능할까요??
각기 다르게 표현할수없다면 수식만 좀부탁드리겠습니다.
이중1개라도 신호가올시 매도
2021-04-28
1657
글번호 148492
시스템
답변완료
보내주신 함수식 설명좀 부탁드릴게요
받아본 수식에 의하면 예를 들어 20과 60이 골든 크로스한 조건이 만족하고, 20선이 변곡이 나오고단다음, 5선이 변곡이 나올때 콜을 들어가는 조건인건데요..
K == 1 Then
{
if K != K[1] Then
Bcnt = 0;
if B == 2 and B != B[1] Then
{
Bcnt = Bcnt+1;
if MarketPosition <= 0 and Bcnt < 3 Then
Buy("콜");
}
}
이부분이 잘 이해가 안가서요.. Bcnt란 값을 넣어줘서 Bcnt = Bcnt + 1 값으로 Bcnt < 3 일때 매수하는 수식을 만드는 부분이 잘 이해가 안되네요...
이것도 변곡있는 부분에서 매수하는것을 말하는것 같은데요...
설명좀 부탁드립니다
///////////////////////////////////////
var : Period1(3),Period2(10),Period3(30),Period4(120),U(0),K(0),W(0),N(0),X(0),Y(0),Z(0);
var : B(0),S(0),Bcnt(0),Scnt(0);
var26 = ema(Ema(Ema(c,period1),period1),period1); //5선
var27 = ema(Ema(Ema(c,period2),period2),period2); //20선
Var28 = ema(Ema(Ema(c,period3),period3),period3); //60선
Var29 = ema(Ema(Ema(c,period4),period4),period4); //240선
//5-20 cross
if CrossUp(Var26,Var27) Then
U = 1;
if CrossDown(Var26,Var27) Then
U = -1;
//20-60 cross
if CrossUp(Var27,Var28) Then
K = 1;
if CrossDown(Var27,Var28) Then
K = -1;
//60-240 cross
if CrossUp(Var28,Var29) Then
W = 1;
if CrossDown(Var28,Var29) Then
W = -1;
//5-60 cross
if CrossUp(Var26,Var28) Then
N = 1;
if CrossDown(Var26,Var28) Then
N = -1;
//5선 상승하락
if Var26 > var26[1] Then
X = 1;
if Var26 < var26[1] Then
X = -1;
//20선 상승하락
if Var27 > var27[1] Then
Y = 1;
if Var27 < var27[1] Then
Y = -1;
//60선 상승하락
if Var28 > var28[1] Then
Z = 1;
if Var28 < var28[1] Then
Z = -1;
if W == 1 and Y == 1 Then
{
if Y != Y[1] Then
{
B = 1;
}
if B == 1 and C > O and (C+O)/2 >= var26 Then
{
B = 2;
}
}
else
B = 0;
if W == -1 and Y == -1 Then
{
if Y != Y[1] Then
{
S = 1;
}
if S == 1 and C < O and (C+O)/2 <= var26 Then
{
S = 2;
}
}
else
S = 0;
if K == 1 Then
{
if K != K[1] Then
Bcnt = 0;
if B == 2 and B != B[1] Then
{
Bcnt = Bcnt+1;
if MarketPosition <= 0 and Bcnt < 3 Then
Buy("콜");
}
}
if K == -1 Then
{
if K != K[1] Then
Scnt = 0;
if S == 2 and S != S[1] Then
{
Scnt = Scnt+1;
if MarketPosition >= 0 and Scnt < 3 Then
Sell("풋");
}
}
if MarketPosition == 1 Then
{
if U == 1 and CountIf(U == -1,BarsSinceEntry) == 0 and
X == -1 and X != X[1] and CountIf(X == -1 and X != X[1],BarsSinceEntry) == 3 Then
ExitLong("콜청산1");
if Y == -1 and C < O and (C+O)/2 <= var27 Then
ExitLong("콜정산2");
}
if MarketPosition == -1 Then
{
if U == -1 and CountIf(U == 1,BarsSinceEntry) == 0 and
X == 1 and X != X[1] and CountIf(X == 1 and X != X[1],BarsSinceEntry) == 3 Then
ExitShort("풋청산1");
if Y == 1 and C > O and (C+O)/2 >= Var27 Then
ExitShort("풋정산2");
}
SetStopEndofday(153000);
2021-04-28
1384
글번호 148484
시스템
답변완료
지표로 사용하는 수식을 함수로 하려는데 부탁합니다.
지표로 사용하고 있는 수식을 함수로 정하고 싶습니다.
함수명을 SIA로 하는 함수로 하려는데 지표로 되어있는수식 제일아래
"plot1(A,"A라인");" 항목을 지우고 검증하는데 함수가 값을 리턴하고 있지 않다는 오류가 나네요..
var : SIA(0);
Var20 = Ema(c,20);
Var21 = Ema(c,21);
Var22 = Ema(c,22);
Var23 = Ema(c,23);
Var24 = Ema(c,24);
Var25 = Ema(c,25);
Var26 = Ema(c,26);
Var27 = Ema(c,27);
Var28 = Ema(c,28);
Var29 = Ema(c,29);
Var30 = Ema(c,30);
Var31 = Ema(c,31);
Var32 = Ema(c,32);
Var33 = Ema(c,33);
Var34 = Ema(c,34);
Var35 = Ema(c,35);
SIA=(iff(var20>var20[1]*(1.003),1,0)+ iff(var21>var21[1]*(1.003),1,0)+ iff(var22>var22[1]*(1.003),1,0)+ iff(var23>var23[1]*(1.003),1,0)+
iff(var24>var24[1]*(1.003),1,0)+ iff(var25>var25[1]*(1.003),1,0)+ iff(var26>var26[1]*(1.003),1,0)+ iff(var27>var27[1]*(1.003),1,0)+
iff(var28>var28[1]*(1.003),1,0)+ iff(var29>var29[1]*(1.003),1,0)+ iff(var30>var30[1]*(1.003),1,0)+ iff(var31>var31[1]*(1.003),1,0)+
iff(var32>var32[1]*(1.003),1,0)+ iff(var33>var33[1]*(1.003),1,0)+ iff(var34>var34[1]*(1.003),1,0)+ iff(var35>var35[1]*(1.003),1,0))/16*100;
plot1(SIA,"A라인");
2021-04-28
1561
글번호 148480
사용자 함수
답변완료
수식확인 부탁드립니다.
1. ATR함수를 수식으로 구현 시 아래가 맞는지 확인부탁드립니다.
> avg(max(max(high-low,abs(close[1]-high)),abs(close[1]-low)),Period)
2. n분봉 차트에서 직전 (n*5)분봉 하이킨아시 캔들의 고가,저가,종가값을 구하고싶습니다.
ex) (09:01분) 1분봉 차트에서 (08:55~09:00분)에 해당하는 5분봉 하이킨아시 캔들의 고가, 저가, 종가 값
아래처럼 여러 수식을 참고하여 작성해봤으나 정확한 데이터가 검출되지 않습니다.
수식작성 부탁드립니다.
Var: mm(1), j(0), calcPeriod(0), htf_h(0), htf_c(0), htf_l(0);
Array:MinOpen[100](0), MinClose[100](0), MinHigh[100](0), MinLow[100](0);
mm = BarInterval()*5;
if mm >= BarInterval() then
calcperiod = mm/BarInterval();
if DayIndex()%calcperiod == 0 then
{
for j = 98 downto 0
{
MinHigh[j+1] = MinHigh[j];
MinLow[j+1] = MinLow[j];
MinClose[j+1] = MinClose[j];
}
MinHigh[0] = H;
MinLow[0] = L;
MinClose[0] = (O + C + H + L)/4;
}
htf_h = minHigh[0];
htf_l = minLow[0];
htf_c = minClose[0];
2021-04-28
1581
글번호 148476
지표