답변완료
수식 변환 부탁드립니다
안녕하세요.
다음 키움수식을 종목검색식으로 변환 부탁드립니다. 감사합니다.
=======================================================================
max( avg(C,short), avg(C,mid), avg(C,long)) <
min( avg(C,short), avg(C,mid), avg(C,long)) * (1+Percent/100) &&
C > highest(H(1),5) && C(1) <= highest(H(2),5)
and
CrossUp(h,BBandsUp(Period,D1))
=======================================================================
수고하세요.
2023-09-19
1102
글번호 172583
종목검색
답변완료
함수요청
안녕하세요?
아래 스크립트는 글번호 83793번에서 답변 주신 것을 응용하였습니다.
1번 신호는 2번 신호보다 우선하여 나오게 하고 싶습니다.
즉 s1은 b2에 우선합니다. b1은 s2에 우선합니다.
s1이 발생하지 않았는데 b2가 먼저 나오게 하지 않게 하고자 합니다.
s1이 발생된 후에는 b2가 나올 수 있습니다.
b1이 발생하지 않았는데 s2가 먼저 나오게 하지 않게 하고자 합니다.
b1이 발생된 후에는 s2가 나올 수 있습니다.
당일 매수는 최대 1번, 매도도 1번, 도합 2번까지 진입이 가능하게 하고자 합니다.
var : entry(0);
var1 = ma(c,100);
if Bdate != Bdate[1] Then
{
entry = 0;
value1 = var1;
}
if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or
(MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then
entry = entry+1;
if DayIndex < 7 Then1
{
Var2 = DayHigh;
Var3 = DayLow;
}
if entry < 1 Then
{
if MarketPosition >= 0 and DayOpen < DayClose(1) and value1 > DayOpen Then
{
if DayIndex >= 7 and CrossDown(C,Var3) Then
Sell("s1",AtMarket);
if CrossUp(C,Var2) Then
Buy("b2",AtMarket);
if CrossDown(c,var1)and var1 < Var3 Then
ExitLong("Cx",AtMarket);
}
}
if MarketPosition <= 0 and DayOpen > DayClose(1) and value1 < DayOpen Then
{
if DayIndex >= 7 and CrossUp(C,Var2) Then
Buy("b1",AtMarket);
if CrossDown(C,Var3) Then
Sell("s2",AtMarket);
if CrossUp(c,var1) and var1 > Var2 Then
ExitShort("Px",AtMarket);
}
SetStopEndofday(151900);
2023-09-19
1071
글번호 172581
시스템
답변완료
부탁드립니다
안녕하세요
예스스탁입니다.
input : 일정배수(5),단기(10),장기(60);
var : atrv(0),mm(0),hh(0),ll(0);
atrv=((avg(max(max(H-L,abs(C[1]-H)),abs(C[1]-L)),단기,1)/C[1]*100+
avg(max(max(H-L,abs(C[1]-H)),abs(C[1]-L)),장기,1)/C[1]*100)/2)*일정배수;
mm=(DayClose(20)+DayClose(19)+DayClose(18)+DayClose(17)+DayClose(16)+DayClose(15)+
DayClose(14)+DayClose(13)+DayClose(12)+DayClose(11)+DayClose(10)+DayClose(9)+
DayClose(8)+DayClose(7)+DayClose(6)+DayClose(5)+DayClose(4)+DayClose(3)+
DayClose(2)+DayClose(1))/20;
hh = mm+mm*atrv/100;
ll = mm-mm*atrv/100;
if MarketPosition == 0 and CrossUp(C,ll) and C[1] < ll[1] Then
Buy("b");
if MarketPosition == 1 and C < LatestEntryPrice(0) Then
Buy("bb");
if MarketPosition == 1 and CrossUp(c,hh) Then
ExitLong();
이 식을 시뮬레이션 돌렸을때 만약 종가에 hh라인보다 밑에 있어도 매도한걸로 잡힐까요?
아니라고 하면 시뮬레이션돌릴때 주가가 hh라인에 닿았을때 매도했다고 인식할수 있는 식 부탁드리고요
hh라인은 움직이지 않으니 시초에 hh라인에 매도를 걸어두는 식이 있다면 그것도 부탁드립니다
2023-09-19
1119
글번호 172563
시스템
답변완료
피라미딩 매매가 잘안됩니다.
if stime == 090000 Then
Buy("buy1",AtMarket,DEF,10);
if stime == 093000 Then
Buy("buy2",AtMarket,DEF,20);
if stime == 100000 Then
Sell("sell1",AtMarket,DEF,10);
if stime == 103000 Then
sell("sell2",AtMarket,DEF,20);
라는 전략식이 있습니다.
피라미딩에 모든 신호 진입으로 세팅하면
의도한건 9시에 10만큼 사고 9시30분에 수량 20만큼사고
그럼 총 30개샀으면
10시에 수량 10만큼 팔고
10시30분에 남은 20개를 마져파는 전략을 구현했는데
실제로 9시에 10개사고 9시 30분에 20개사고
10시에 다팔아버립니다.
원하는데로 구현하려면 어떻게해야하나요?
2023-09-19
1019
글번호 172561
시스템