답변완료
68005 관련 추가 문의드립니다.
안녕하세요
항상 친절한 도움에 감사한 마음입니다.
68005 관련 추가 문의드립니다.
(5봉경과 수식 외에) 추가로, 진입후 시간이 5분경과 해도 청산 안되는 경우에도
익절/손절틱수를 변경하는 수식을 부탁드리겠습니다.
===========================================================
아래의 샘플 수식을 300틱봉에서 돌리고 있습니다.
아래의 식에,
진입한 후, 진입봉이후 5봉이내 또는 5분이내 에서 수익 청산이 안되는 경우
익절값과 손절값을 아래처럼 변경하고 싶은데요...
각 각 수식 가능할런지요 ?
1) 5봉 경과
2) 5분 경과
익절 : 10틱 --> 6틱
손절 : 13틱 --> 7틱
// --------------------------------------------
input : Period(20), 익절(10), 손절(13);
var1 = highest(H,Period)[1];
var2 = Lowest(L,Period)[1];
if CrossUp(C, var1) Then
buy();
if CrossDown(C, var2) Then
sell();
SetStopLoss(PriceScale*손절,PointStop);
SetStopProfittarget(PriceScale*익절,PointStop);
// --------------------------------------------
감사합니다.
2020-06-18
1992
글번호 139955
시스템
답변완료
어제의 가격들과 오늘의 종가 비교하는 for, if문
주가의 움직임 영역을 아래처럼 6가지로 나누고,
1/2번, 2/3번, 4/5번, 5/6번 영역 사이의 경계를 Pivot Point라고 해서 뒤에 PP를 붙였습니다.
State No 1.상승추세(Uptrend)
---------------------------- UptrendPP (종가가 이 위로 가면 그 종가는 상승추세에 기입)
State No 2.진짜반등(RealRally)
---------------------------- RealRallyPP (종가가 이 위로 가면 그 종가는 진짜반등에 기입)
State No 3.가짜반등(FakeRally)
---------------------------- (종가가 3번/4번 영역에 있으면 그 종가는 가짜반등/가짜조정에 기입)
State No 4.가짜조정(FakeReact)
---------------------------- RealReactPP (종가가 이 아래로 가면 그 종가를 진짜조정에 기입)
State No 5.진짜조정(RealReact)
---------------------------- DntrendPP (종가가 이 아래로 가면 그 종가를 하락추세에 기입)
State No 6.하락추세(Dntrend)
제가 만들고자 하는 수식은 설정된 기간동안 매일 종가를 추적하여,
아래의 내용을 비교해서 오늘의 종가가 6개 영역중 어디에 해당되는지 판단하는 것입니다.
- 어제의 종가가 어느 영역에 머물렀는가
- 오늘의 종가 vs 어제의 종가 크기 비교
- 오늘의 종가 vs 어제의 Pivot Point들과 비교
-
어제의 종가가 1번 영역(상승추세) 일때만 좀 봐주신다면 나머지 2/3/4/5/6번 영역일떄의 if문은 제가 작성해보도록 하겠습니다.
제가 우선 다른 프로그램에서 쓰는 수식 변형해서 만들어봤는데 F4 눌러서 검증은 마쳤습니다만,
오늘의 종가가 어느 영역에 있는지 결과값은 나오지 않는 상황입니다.
----------------------------------------------------------------------------------
var : i(0),stateno(0),
uptrend(0),realrally(0),fakerally(0),fakereact(0),realreact(0),dntrend(0),
UpTrendPP(0),NatRallyPP(0),NatReactPP(0),DnTrendPP(0);
For i = index-1 downto 0 // 어제 종가가 어느 영역에 머물렀는지 기준으로 반복해야하므로 for문 사용
{
if i==index-1 then // 시작날짜의 경우 전날에 대한 데이터가 없으므로 1번영역 라고 가정하고 모든 변수에 우선 첫날 종가입력
{
StateNo[i]==1;
UpTrend[i]== C[i];
RealRally[i]== C[i];
FakeRally[i]== C[i];
FakeReact[i]== C[i];
RealReact[i]== c[i];
DnTrend[i]==C[i];
UpTrendPP[i]==C[i];
RealRallyPP[i]==C[i];
RealReactPP[i]==C[i];
DnTrendPP[i]==C[i];
}
else // 시작날짜가 아닌경우 전날의 종가가 어느 영역이었는지 기준으로 if문 반복
{
if(StateNo[i+1]==1) then // 전날의 종가가 1번 영역이었다면 이걸 실행. 2/3/4/5/6번 영역이었을때의 조건문은 각각 있음. 여기선 예시로 1번 영역일때만 사용.
{
if(C[i]>=C[i+1]) then // 오늘의 종가가 어제 종가보다 크거나 같은가?
{
if(C[i]>UpTrend[i+1]) then // 그렇다면 오늘의 종가가 어제의 상승추세에 입력된 가격보다 큰가?
{
StateNo[i]==1; // 그렇다면 오늘의 종가는 1번 영역에 있다고 판단
UpTrend[i]==C[i]; // 오늘의 종가를 상승추세 영역에 기입
}
그 다음날은 또 어제의 종가가 어느 영역에 있는지 판단하는것부터 시작 반복...
2020-06-18
2079
글번호 139941
지표
답변완료
시스템신호를 파워종목검색 수식 변경
다음은 시스템 수식입니다
이것을 파워종목검색에 적용하여 해당 값에 만족한 종목들을 찾고 싶습니다.
시스템수식에는 매수신호 하락신호 모두 나와있지만
양쪽모두가 불가능하다면
매수신호가 충족하는 종목만 검색해도 됩니다.
시스템수식을 변경하여 파워종목검색에 적용할수 있을까요?
input : sto1(10),sto2(6),sto3(6);
var : stok(0),stod(0),T(0),cnt(0);
Array : HH[10](-1),LL[10](-1);
stok = StochasticsK(sto1,sto2);
stod = StochasticsD(sto1,sto2,sto3);
if crossup(stok,stod) Then
{
T = 1;
HH[0] = stok;
for cnt = 1 to 9
{
HH[cnt] = HH[cnt-1][1];
}
if LL[0] < LL[1] and HH[1] > HH[2] and LL[1] >= 0 and HH[2] >= 0 Then
sell();
}
if CrossDown(stok,stod) Then
{
T = -1;
LL[0] = stok;
for cnt = 1 to 9
{
LL[cnt] = LL[cnt-1][1];
}
if HH[0] > HH[1] and LL[1] > LL[2] and HH[1] >= 0 and LL[2] >= 0 Then
buy();
}
if T == 1 then
{
if stok > HH[0] Then
HH[0] = stok;
}
if T == -1 then
{
if stok < LL[0] Then
LL[0] = stok;
}
2020-06-18
2234
글번호 139940
종목검색
답변완료
시스템 수식전환 부탁
다음 수식을 예스수식으로 전환부탁드립니다.
<1> 수식1
a=highestsince(1,Crossup(macd(1,60),0),avg(c,60));
B=avg(c,60);
if(a>b,a,b)
수식2
a=lowestsince(1,Crossdown(macd(1,60),0),avg(c,60));
B=avg(c,60);
if(a<b,a,b)
<2>수식1
avg(c,60)/(jas=avg(c,10)/100)
수식2
avg(c,10)/(jas=avg(c,60)/100)
<3>수식1
A=avg(c, MA1);
B=avg(c, MA2);
if(A >= B,ValueWhen(1, Crossup(A ,B), A),B)
수식2
if(A < B,ValueWhen(1, Crossdown(A ,B), A),B)
지표조건설정
MA1 20
MA2 60
2020-06-18
2071
글번호 139939
지표
답변완료
변경 수식부탁드립니다.
안녕하세요
항상 많은 도움에 깊은 감사를 드립니다.
아래의 샘플 수식을 300틱봉에서 돌리고 있습니다.
아래의 식에,
진입한 후, 진입봉이후 5봉이내 또는 5분이내 에서 수익 청산이 안되는 경우
익절값과 손절값을 아래처럼 변경하고 싶은데요...
각 각 수식 가능할런지요 ?
1) 5봉 경과
2) 5분 경과
익절 : 10틱 --> 6틱
손절 : 13틱 --> 7틱
// --------------------------------------------
input : Period(20), 익절(10), 손절(13);
var1 = highest(H,Period)[1];
var2 = Lowest(L,Period)[1];
if CrossUp(C, var1) Then
buy();
if CrossDown(C, var2) Then
sell();
SetStopLoss(PriceScale*손절,PointStop);
SetStopProfittarget(PriceScale*익절,PointStop);
// --------------------------------------------
감사합니다.
2020-06-18
1850
글번호 139938
시스템
답변완료
67965 관련 추가 문의드립니다.
var1 = XXX(1);
var2 = XXX(1);
if crossup(c,Var1) Then
buy();
if CrossDown(c,var2) Then
sell();
상기 시스템 수식에서
Sell 시그널이 나온 후 10개 캔들 이내로 다시 Buy 시그널이 나오는 종목을
검색할 수 있도록 종목 검색식 문의드릴 수 있을까요
--------------------------------------------------------------------------
if Crossup(c,var1) and countif(crossdown(c,var2),10) >= 1 Then
{
find(1);
}
이 종목 검색식은 제가 수정해본 것인데 이 수식은 Sell 시그널이 나온 후 10개 이내로 Buy 시그널이 나오는 것들과
단순히 가격이 Var2 아래에 있다가 Buy 시그널이 나오는 종목들도 모두 검색이 됩니다.
혹시 countif(crossdown(c,var2),10) 뒤에 그 전에 매수 신호가 나왔었다라는 조건을 지정해주어야 Sell 시그널이 발생 후 10개 이내로 Buy가 나오는 상황으로 한정할 수 있는
건지요
도움주셔서 감사드립니다.
좋은 하루되세요!
2020-06-18
1869
글번호 139933
종목검색