답변완료
수식 부탁 드립니다.
1. 파라볼릭 점을 한개씩 당겨서 지표로 사용하고 있는데
그림 파일안에 있는 마지막 점을 돌파할때 종목검색되는 수식을 부탁 드립니다.
Input : af(0.02), maxAF(0.2);
Plot1(SAR(af,maxAF)[1], "SAR");
2. 그리고 아래 3개의 검색 조건을 하나로 통합시켜 주세요..
1)
Input : af(0.02), maxAF(0.2);
Var : value(0);
value = sar(af,maxAF);
If crossup(c,value) Then
find(1);
2)
input : P8(8),P5(5),S4(4);
var : E(0),NS(0),SS(0),EX(0),EY(0),STOS(0);
STOS = AccumN(C-lowest(L, P8), 1)/AccumN((highest(H, P8)-lowest(L, P8)), 1)* 100;
E = 2.718281828;
NS = 0.1 * (STOS - 50);
SS = ema(ema(NS, P5),P5);
EX = POW (E, SS)-1;
EY = POW (E, SS)+1;
var1 = EX/EY;
var2 = ema(EX/EY, S4);
if crossup(Var1,var2) Then
find(1);
3)
Input : Period(26), Period1(17), Period2(4.5);
value1 = StochasticsK(Period, Period1);
value2 = StochasticsD(Period, Period1, Period2);
If value1 > value2 Then
{
If C == C[1] Then
value3 = 0.001;
Else
value3 = (C-C[1])/C[1]*100;
}
Else value3 = 0;
Find(value3);
부탁 드리겠습니다.
2020-09-07
1013
글번호 142141
종목검색
답변완료
수정좀 부탁드려요
아래의 수식에서
- 피보나치 선이 Y축까지 연장이 되었으면 합니다
- 또한 굵기를 지정할수 있게 수정부탁드립니다.
- 50%선만 색이 달랐으면 합니다.
Input:length(10),기준일(20110101),파동선두께(2);
Var:j(0),jj(0),jjj(0),최종고가(0),최종저가(0),최종변곡점(""),처리구분(""),
TL1(0);
Array:고[5,4](0),저[5,4](0), // 1:가격, 2:Index, 3:sDate, 4:sTime
역사적고점[5](0),역사적저점[5](0);
#==========================================#
If Index == 0 Then
{
고[1,1] = H;
저[1,1] = L;
}
Condition1 = Highest(H,length) == H and 최종고가 <> H;
Condition2 = Lowest (L,length) == L and 최종저가 <> L;
처리구분 = "";
If Condition1 and Condition2 Then // 기간고점과 기간저점 동시 발생
{
If 최종변곡점 == "저점" Then 처리구분 = "고점처리"; // 저 - 고 순으로 처리
Else 처리구분 = "저점처리"; // 고 - 저 순으로 처리
}
Else If Condition1 Then 처리구분 = "고점처리";
Else If Condition2 Then 처리구분 = "저점처리";
#==========================================#
If 처리구분 == "고점처리" Then
{
최종고가 = H; // 신규고점을 체크하기 위해 저장
If 최종변곡점 == "저점" Then
{
For j = 5 DownTo 2
{
For jj = 1 To 4
{
고[j,jj] = 고[j-1,jj];
}
}
고[1,1] = H;
고[1,2] = Index;
고[1,3] = sDate;
고[1,4] = sTime;
TL1 = TL_New(저[1,3],저[1,4],저[1,1],고[1,3],고[1,4],고[1,1]);
TL_SetSize(TL1,파동선두께);
TL_SetColor(TL1,RED);
}
Else If 고[1,1] < H Then // 1번 고점보다 높은 고가 출현
{
고[1,1] = H;
고[1,2] = Index;
고[1,3] = sDate;
고[1,4] = sTime;
TL_SetEnd(TL1,고[1,3],고[1,4],고[1,1]);
}
If 기준일 <= Date and (역사적고점[1] < 고[1,1] or 역사적고점[1] == 0) Then
{
For jjj = 1 To 4
{
역사적고점[jjj] = 고[1,jjj];
역사적저점[jjj] = 0;
}
}
최종변곡점 = "고점";
}
#==========================================#
If 처리구분 == "저점처리" Then
{
최종저가 = L;
If 최종변곡점 == "고점" then
{
For j = 5 DownTo 2
{
For jj = 1 To 4
{
저[j,jj] = 저[j-1,jj];
}
}
저[1,1] = L;
저[1,2] = Index;
저[1,3] = sDate;
저[1,4] = sTime;
TL1 = TL_New(고[1,3],고[1,4],고[1,1],저[1,3],저[1,4],저[1,1]);
TL_SetSize(TL1,파동선두께);
TL_SetColor(TL1,BLUE);
}
Else If 저[1,1] > L then
{
저[1,1] = L;
저[1,3] = sDate;
저[1,4] = sTime;
저[1,2] = Index;
TL_SetEnd(TL1,저[1,3],저[1,4],저[1,1]);
}
If 기준일 <= Date and ( 역사적저점[1] > 저[1,1] or 역사적저점[1] == 0 ) Then
{
For jjj = 1 To 4
{
역사적저점[jjj] = 저[1,jjj];
//역사적고점[jjj] = 0; // 역사적 고점 초기화
}
}
최종변곡점 = "저점";
}
#==========================================#
Var:기울기(0);
Array:fr[7,4](0); // 1:비율, 2:값, 3:라인번호, 4:텍스트번호
If Index == 0 Then
{
fr[1,1] = 0;
fr[2,1] = 0.236;
fr[3,1] = 0.382;
fr[4,1] = 0.50;
fr[5,1] = 0.618;
fr[6,1] = 0.764;
fr[7,1] = 1;
}
If 역사적고점[1] > 0 and 역사적저점[1] > 0 Then
{
If 역사적고점[1][1] != 역사적고점[1] or 역사적저점[1][1] != 역사적저점[1] Then
{
기울기 = (역사적고점[1] - 역사적저점[1]) / (역사적고점[2] - 역사적저점[2]);
for j = 1 to 7
{
If fr[j,3] > 0 Then TL_Delete(fr[j,3]); // 기존의 라인은 지우고
fr[j,2] = 기울기 * fr[j,1] * (index - 역사적고점[2]) + 역사적고점[1]; // 피보나치 비율을 곱해서 계산
fr[j,3] = TL_New(역사적고점[3],역사적고점[4],역사적고점[1],sDate,sTime,fr[j,2]); // 라인을 생성
}
}
Else
{
for j = 1 to 7
{
fr[j,2] = 기울기 * fr[j,1] * (index - 역사적고점[2]) + 역사적고점[1];
TL_SetEnd(fr[j,3],sDate,sTime,fr[j,2]);
}
}
}
2020-09-07
925
글번호 142126
지표
답변완료
시스템 일봉to 분봉화
나날이 발전하는 예스트레이더에 감사드리며,
오늘도 좋은 하루 되길 빕니다.
아래의 일봉기준 RVI(relative volatility Index)의 분봉차트에 적용하고자 합니다.
/*------------------*/
input: p50(13),LPercent(20), SPercent(80);
Var: SD10(0), UF(0),DN(0),UE(0), de(0),UM(0), dm(0), rv1(0), rv2(0), rvI1(0), RVI2(0);
SD10=STD(C,10);
UF= IFF(C>C[1], SD10,0);
DN=IFF(C<C[1], SD10,0);
UE=EMA(UF,P50);
DE=EMA(DN,P50);
UM=MA(UF,P50);
DM=MA(DN,P50);
RV1=UM/DM;
RVI1=100-100/(1+RV1);
RV2=UE/DE;
RVI2=100-100/(1+RV2);
# 매수/매도청산
If CrossUP(RVI1, LPercent) Then
{
Buy();
}
# 매도/매수청산
If CrossDown(RVI1, SPercent) Then
{
Sell();
}
/*------------------*/
2020-09-06
787
글번호 142115
시스템