예스스탁
예스스탁 답변
2024-04-29 15:53:53
안녕하세요
예스스탁입니다.
1
비교는 2개의 값 비교로 구성하셔야 합니다.
여러개를 비교할 때는 아래와 같이 2개씩 and로 연결하셔야 합니다.
if (이평20>이평5 and 이평5>이평60 and 이평60 > 이평120) then
위와 같이 작성하시면 조건이 만족한 경우이고
조건문에 전체를 ()로 묶고 앞에 !를 붙이면 아닌 경우를 찾는 내용입니다.
if !(이평20>이평5 and 이평5>이평60 and 이평60 > 이평120) then
2
if countif(H>highest(H,100)[1],N1) == n2 then
올려주신 내용은 최근 N1봉 안에 N2번 고점갱신이 있다라는 내용과 같습니다.
N1대신에 10 N2대신에 3을 대입하면 최근 10개봉 안에 고점갱신이 3번이다라는 내용이 됩니다.
if countif(H>highest(H,100)[1],10) == 3 then
3
var : T(0),PC(0),count(0);
if MarketPosition == 1 Then
{
if T == 0 and BarsSinceEntry <= 3 and H > highest(H,100)[1] Then
{
T = 1;
}
Else
{
if T == 1 Then
{
if C > O Then
{
count = count+1;
PC = c;
}
if C < O Then
T = 2;
}
if T == 2 and C < O and PC > 0 and C < PC and count >= 5 Then
ExitLong("bx1");
}
}
Else
{
T = 0;
PC = 0;
count = 0;
}
4
if MarketPosition == 1 Then
{
if H > highest(H,100)[1] Then
{
Condition1 = true;
var1 = BarsSinceEntry;
}
if Condition1 == true Then
{
if CrossDown(c,ma(c,60)) Then
ExitLong();
}
if CrossDown(c,ma(C,20)) Then
{
Value2 = Value2+1;
value1 = BarsSinceEntry;
if Value2 >= 2 and value1[1] < var1 and var1 < Value2 Then
ExitLong();
}
}
Else
{
Condition1 = true;
var1 = -1;
value1 = -1;
Value2 = 0;
}
#익절은 어떤 값으로 지정하는지 알수 없습니다.
#수치는 직접 함수안에 지정하시기 바랍니다.
SetStopProfittarget();
5
if MarketPosition == 1 Then
{
if BarsSinceEntry <= 30 and H > highest(H,100)[1] Then
{
Condition2 = true;
}
if Condition2 == False and C > ma(c,120) Then
{
ExitLong("bx",AtLimit,EntryPrice+10);
if C > ma(C,60) Then
ExitLong();
}
}
Else
{
Condition2 = true;
}
#손절은 어떤 값으로 지정하는지 알수 없습니다.
#수치는 직접 함수안에 지정하시기 바랍니다.
SetStopLoss();
6
if MarketPosition == 1 Then
{
if lowest(L,20) <= EntryPrice-20 Then
ExitLong("본청",AtLimit,EntryPrice);
}
7
기본차트속성에서 Y축을 화면(기본차트)로 지정하시면
봉만으로 Y축이 스케일되고 지표는 해당 범위안에 있는 것만 보이게 됩니다.
기본차트속성은 차트에서 봉을 더블클릭하면 나타납니다.
즐거운 하루되세요
> 산골소년 님이 쓴 글입니다.
> 제목 : 문의드립니다.
> 늘 고맙습니다.
# true와 false 사용법에 대해 알고 싶습니다.
(이평5>이평20) != true
위와 같이 하나의 조건이 맞나 안맞나는 되는데요. 조건이 더 생기면 어렵네요.
(이평20>이평5>이평60>이평120) 이 조건이 true인 경우
(이평20>이평5>이평60>이평120) 이 조건이 true가 아닌 경우
수식을 어떻게 만들어야 하나요?
# 위치 찾기
HH위치 = NthHighestBar(1,H,100);
100캔들의 최고점 위치를 위와같이 찾았는데요.
예를 들어 현재봉부터 지난 N캔들동안 100캔들의 고점을 돌파한 적이 없다가 N1캔들전에 처음으로 100캔들의 고점을 돌파했었고, 그 뒤로 고점을 경신한 캔들이 N2번 나왔어요.
여기서 N1과 N2를 찾는 수식을 알고 싶습니다.
## 청산식에서 구분짓고자 합니다.
# 진입후 3캔들내 100캔들의 고점을 돌파하고 100캔들 고점돌파이후 5캔들이 모두 양봉이라면, 음봉이 나오고 그 음봉이 최종 양봉의 저가를 이탈하면 청산
# 진입후 100캔들의 고점을 돌파했으면
1. 60이평을 이탈하면 청산한다.(완성봉 청산과 이탈즉시 청산식을 별도로 알고싶습니다. onclose 사용법을 아직 잘 모르는거 같습니다.)
2. 20이평을 종가로 이탈했는데 다시 100캔들의 고점을 돌파하면, 20이평을 이탈하면 청산
3. 강제청산(익청)
# 진입후 30캔들내 100캔들의 고점은 돌파못하고 120이평만 돌파했다면
1. +10 수익중이면 바로 청산
2. 60이평 이상이면 청산
3. 강제청산(손절)
# 진입후 최대손실이 -20 이상이었다면
1. 본청한다.
#차트에 전일고가와 전일 저가를 나오게 하면 캔들이 아주 작아져 버리는데요.
현재 캔들의 위치에 비해 과도하게 위나 아래에 위치한 선들을 캔들이 그 선 근처까지 가기전까지는 나오지 않게 하는 방법이 있나요?