답변완료
종목검색식 추가 부탁합니다.
우선 많은 수고에 감사드립니다.
다음과 같은 수식이 있습니다.
아래수식에서 키움 지표수식 MACD(12,26)-eavg(MACD(12,26),9)
Oscillator가 전봉에서 기준선0보다 높을경 매수조건을 덧붙여 주시면 고맙겠습니다.
A=RSI(14);
RSI저점=ValueWhen(1,CrossUp(A,30),O);
input : 배분1(0.236),배분2(1.02),DN(1.05);
var : 중최고가(0),중최저가(0),경계(0),경계1(False),경계2(False);
var : 기준봉(0),기준봉1(False),기준봉2(False),결과기준(0),결과기준1(false),결과기준2(false);
var : value(0);
중최고가=Highest(H,20);
중최저가=Lowest(L,20);
경계=(중최고가+중최저가)/2-(중최고가-중최저가)*배분1;
경계1=CROSSUP(C,경계)&&C>O*배분2;
경계2=CROSSDOWN(C,경계);
if 경계1 OR 경계2 Then
기준봉 = O;
기준봉1=CROSSUP(c,기준봉);
기준봉2=CROSSDOWN(c,기준봉);
if 기준봉1 OR 기준봉2 Then
결과기준 = O;
결과기준1=CROSSUP(c,결과기준);
결과기준2=CROSSDOWN(c,결과기준);
if 결과기준1 OR 결과기준2 Then
value = O;
if value < value[1] and
value >= value[1]*0.85 and
C <= O*1.01 Then
Find(1);
2025-03-04
447
글번호 188784
종목검색
답변완료
시스템식 요청드립니다.
방금 밑에 수식 요청드렸었는데
수정하셧던 식을 적용하였더니 그림 1과 같이 나오게 되었습니다.
그래서 일부 수정하여 그림 2와 같이 나오게 되었는데
궁금한점은 1~6차 까지 매수하면서 4~6차의 경우 매수매도가 반복 되면서
평단이 밑으로 많이 내려갔을것 같은데 정확히 평단이 얼마인지는 알수 없나요??
그리고 아래의 시스템식으로 적용 하면 내려간 평단에서 3% 가 되었을때 익절이 되는게
맞는건지 궁금합니다.
-----------------------------------------------------------
안녕하세요
예스스탁입니다.
bx청산은 평단가가 기준입니다.
일부수량이 청산되면 평단가도 변하게 됩니다.
bx를 3차진입까지의 평단가로 수정해 드립니다.
input : N(14),금액(2000000);
input : 시작날짜 (20250109);
Input : 기준선기간(120);
Var : 기준선(0);
var : cntt(0),H1(0),L1(0);
var : cnt(0),sum(0),mav(0),DD(0);
var : AP(0),TT(0),entry(False);
var : LL(0),RR(0),rate(0);
var : 저항(0), B1(0) ;
Var : day(0),EntryDay(0),ddd(0),ED(0);
var : sum1(0),sum2(0),sum3(0),avg4(0);
#-------------------------------------
if sDate >= 시작날짜 Then
{
if Bdate != Bdate[1] Then
{
entry = true;
day = day+1;
dd = dd+1;
}
}
if TotalTrades > TotalTrades[1] Then
entry = False;
#-------------------------------------
#-------------------------------------
sum = 0;
For cnt = 0 to N-1
{
sum = sum + DayClose(cnt);
}
mav = (sum/N);
#-------------------------------------
#---------------------------------------
if (MarketPosition == 0) and (entry == true) and L > mav Then
Buy("1차매수",AtLimit,mav,Floor(금액/min(NextBarOpen,mav)));
if MarketPosition == 1 and (LatestEntryName(0) == "1차매수") and L > LatestEntryPrice(0)*0.95 Then
Buy("2차매수",AtLimit,LatestEntryPrice(0)*0.95,Floor(금액*1.15/min(NextBarOpen,mav)));
if MarketPosition == 1 and (LatestEntryName(0) == "2차매수") and L > LatestEntryPrice(0)*0.95 Then
Buy("3차매수",AtLimit,LatestEntryPrice(0)*0.95,Floor(금액*1.2/min(NextBarOpen,mav)));
if MarketPosition == 1 and (LatestEntryName(0) == "3차매수") and L > LatestEntryPrice(0)*0.95 Then
Buy("4차매수",AtLimit,LatestEntryPrice(0)*0.95,Floor(금액*1.25/min(NextBarOpen,mav)));
if MarketPosition == 1 and (LatestEntryName(0) == "4차매수") and L > LatestEntryPrice(0)*0.95 Then
Buy("5차매수",AtLimit,LatestEntryPrice(0)*0.95,Floor(금액*1.3/min(NextBarOpen,mav)));
if MarketPosition == 1 and (LatestEntryName(0) == "5차매수") and L > LatestEntryPrice(0)*0.95 Then
Buy("6차매수",AtLimit,LatestEntryPrice(0)*0.95,Floor(금액*1.35/min(NextBarOpen,mav)));
#-----------------------------------
if MarketPosition == 1 Then
{
#전봉대비 수량 감소(일부 청산발생을 위미)
if CurrentContracts < CurrentContracts[1] Then
{
#청산가 저장
var1 = LatestExitPrice(0);
if LatestExitName(0) == "3%익절" or LatestExitName(0) == "3-D%익절" or LatestExitName(0) == "3-E%익절" Then
Condition1 = true;
if LatestExitName(0) == "4%익절" or LatestExitName(0) == "4-D%익절" or LatestExitName(0) == "4-E%익절" Then
Condition2 = true;
if LatestExitName(0) == "5%익절" or LatestExitName(0) == "5-D%익절" or LatestExitName(0) == "5-E%익절" Then
Condition3 = true;
if LatestExitName(0) == "7%익절" or LatestExitName(0) == "7-D%익절" Then
Condition4 = true;
}
#전봉대비 수량 증가(추가 진입발생을 의미)
if CurrentContracts > CurrentContracts[1] AND ((LatestEntryName(0) == "1차매수") OR (LatestEntryName(0) == "2차매수") or (LatestEntryName(0) == "3차매수") ) Then
{
#현재수량 저장
Var3 = CurrentContracts;
Var4 = AvgEntryPrice;
Condition1 = False;
Condition2 = False;
Condition3 = False;
Condition4 = False;
}
if CurrentContracts > CurrentContracts[1] AND ((LatestEntryName(0) == "4차매수")) Then
{
#현재수량 저장
Var3 = CurrentContracts;
Var4 = AvgEntryPrice;
Condition1 = False;
Condition2 = False;
Condition3 = False;
Condition4 = False;
}
if CurrentContracts > CurrentContracts[1] AND ((LatestEntryName(0) == "6차매수") or (LatestEntryName(0) == "5차매수")) Then
{
#현재수량 저장
Var3 = CurrentContracts;
Var4 = AvgEntryPrice;
Condition1 = False;
Condition2 = False;
Condition3 = False;
Condition4 = False;
}
if CurrentEntries <= 3 Then
{
var98 = LatestEntryPrice(0);
var99 = AvgEntryPrice;
}
if var98 > 0 and C < Var99 then
ExitLong("bx");
if Condition1 == False AND ((LatestEntryName(0) == "1차매수") OR (LatestEntryName(0) == "2차매수") or (LatestEntryName(0) == "3차매수") )Then
ExitLong("3%익절",AtLimit,Var4*1.03,"",Floor(Var3*0.2),1);
if Condition2 == False AND ((LatestEntryName(0) == "1차매수") OR (LatestEntryName(0) == "2차매수") or (LatestEntryName(0) == "3차매수") ) Then
ExitLong("4%익절",AtLimit,Var4*1.04,"",Floor(Var3*0.3),1);
if Condition3 == False AND ((LatestEntryName(0) == "1차매수") OR (LatestEntryName(0) == "2차매수") or (LatestEntryName(0) == "3차매수") ) Then
ExitLong("5%익절",AtLimit,Var4*1.05,"",Floor(Var3*0.4),1);
if Condition4 == False AND ((LatestEntryName(0) == "1차매수") OR (LatestEntryName(0) == "2차매수") or (LatestEntryName(0) == "3차매수") ) Then
ExitLong("7%익절",AtLimit,Var4*1.07,"",Floor(Var3*0.1),1);
ExitLong("10%익절",AtLimit,Var4*1.10);
//4차 이상 진입
if CurrentEntries >= 4 Then
{
//4차 이후의 평듄
if CurrentContracts > CurrentContracts[1] Then
{
sum1 = sum1 + C*(CurrentContracts-CurrentContracts[1]);
sum2 = sum2 + (CurrentContracts-CurrentContracts[1]);
avg4 = sum1/sum2;
}
if CurrentEntries >= 4 Then
ExitLong("4차이후익절4",AtLimit,avg4*1.04,"4차매수");
if CurrentEntries >= 5 Then
ExitLong("4차이후익절5",AtLimit,avg4*1.04,"5차매수");
if CurrentEntries >= 6 Then
ExitLong("4차이후익절6",AtLimit,avg4*1.04,"6차매수");
}
Else
{
sum1 = 0;
sum2 = 0;
avg4 = 0;
}
}
Else#매수진입중이 아니면
{
#변수 0으로 초기화
var1 = 0;
Var2 = 0;
}
2025-03-05
415
글번호 188780
시스템
답변완료
예스트레이딩 수식으로 부탁드립니다.
예스 종목 검색식으로 변환 부탁드립니다.
(1)
A=H-L;
B=Max(C, O)-L;
조건=A/B>2 && H/C(1)>(1+15/100);
기준가=Valuewhen(1, 조건, H);
CrossUp(C, 기준가)
(2)
A=H-L;
B=Max(C, O)-L;
조건=A/B>2 && H/C(1)>(1+15/100);
기준가=Valuewhen(1, 조건, H);
Dv=Valuewhen(1, 조건, V);
CrossUp(C, 기준가) && V>Dv
(3)
A=H-L;
B=Max(C, O)-L;
조건=A/B>2 && H/C(1)>(1+15/100);
기준가=Valuewhen(1, 조건, H);
Dv=Valuewhen(1, 조건, V);
봉갯수=BarsSince(조건):
CrossUp(C, 기준가) && 봉갯수<10
(4)
S=sum(V);
A=H-L;
B=Max(C, O)-L;
조건=A/B>2 && H/C(1)>(1+15/100);
기준가=Valuewhen(1, 조건, H);
누적Dv=S-Valuewhen(1, 조건, S(1))-V;
C>기준가 && CrossUp(V, 누적Dv)
2025-03-04
428
글번호 188776
종목검색
답변완료
종목검색식 부탁드립니다.
아래 3가지 수식을 예스 종목검색식으로 부탁드립니다.
1)
상한선=BBandsUp(Period, D1);
C>O &&
V(1)*배수<V &&
C(1)*상승률>C &&
CrossUp(C, 상한선) &&
Highest(H(1), 기간)<C &&
V>Highest(V(1), 기간)
(지표변수) Period: 120 / D1: 1 / 배수: 2 / 상승률: 1.3 / 기간: 60
2)
기준=C>O && V>V(1)*비율;
Vv=Valuewhen(1, 기준, V/2);
캔들기준=if(BarsSince(기준)<봉수, Vv, 0);
Vm=if(C<O && C<C(1), V, 0);
S=sum(Vm);
Vm10=S-Valuewhen(1, 기준, S(1));
Conl=if(BarsSince(기준)<봉수, Vm10, 0);
CrossUp(Conl, 캔들기준)
(지표변수) 비율: 30 / 봉수: 15
3)
C(P)>O(P) &&
C>O &&
V(P)*2<V &&
CrossUp(C, C(P))
(지표변수) P: 10
2025-03-04
452
글번호 188775
종목검색