예스스탁
예스스탁 답변
2021-04-12 15:56:32
안녕하세요
예스스탁입니다.
input : b1(280),X1(4600),진입눌림(70),진입돌파(210),청산눌림(100),청산돌파(270),거래횟수(20);
input : stop(80000),trail(230000);
var : T1(0,data1),entry(0,data1),cond(False);
var : LL(0,data2),EH(0,data2),E1(0,data2),H1(0,data2);
var : i1(0,data2),S1(0,data2),L1(0,data2);
var : DH2(0,data2),DL2(0,data2);
if data1(Bdate != Bdate[1]) Then
T1 = TotalTrades;
if data2(Bdate != Bdate[1]) Then{
E1 = 0;
DH2 = data2(H);
DL2 = data2(L);
}
if data2(H > DH2) Then
DH2 = data2(H);
if data2(L < DL2) Then
DL2 = data2(L);
if MarketPosition == 0 Then
entry = TotalTrades-T1;
Else
entry = (TotalTrades-T1)+1;
COND = MarketPosition == 0 and
(IsExitName("StopLoss",1) == true and BarsSinceExit(1) <= 10) or
(IsExitName("StopTrailing",1) == true and BarsSinceExit(1) <= 20) or
(IsExitName("bx",1) == true and BarsSinceExit(1) <= 30);
if MarketPosition == 0 and entry == 0 Then
{
if data2(E1 == 0 and C >= DL2+PriceScale*B1 and C[1] < DL2+PriceScale*B1) Then{
E1 = 1;
H1 = data2(H);
i1 = data2(index);
}
if data2(E1 == 1 and index > i1) then{
if data2(H > H1) Then
H1 = data2(H);
if data2(L <= H1-PriceScale*진입눌림) Then{
E1 = 2;
i1 = data2(index);
S1 = H1;
}
}
if data2(E1 == 2 and index > i1 and C >= S1+PriceScale*진입돌파) and COND == False Then{
buy("b");
}
}
if MarketPosition == 1 Then{
if entry >= 1 then{
if CurrentContracts > CurrentContracts[1] Then{
EH = data2(H);
E1 = 0;
}
if data2(H > EH) Then{
EH = data2(H);
E1 = 0;
}
if data2(E1 == 0 and C <= EH-PriceScale*X1) Then{
E1 = 1;
L1 = data2(L);
i1 = data2(index);
}
if data2(E1 == 1 and index > i1) Then{
if data2(L < L1) Then
L1 = data2(L);
if data2(H >= L1+PriceScale*청산눌림) Then{
E1 = 2;
I1 = data2(index);
S1 = L1;
}
}
if data2(E1 == 2 and index > i1 and C <= S1-PriceScale*청산돌파) Then{
exitlong("bx");
E1 = 0;
}
}
}
setstoploss(stop,pointstop);
setstoptrailing(trail,0,pointstop);
즐거운 하루되세요
> 목마와숙녀 님이 쓴 글입니다.
> 제목 : 문의
> 아래는 신호가 나오는대로 진입과 청산을 반복하는 거래수식입니다.
청산 후 재진입시 일정 term을 가지고 진입하고자 합니다.
강제손절시 10봉 지나서 진입허용
트레일링스탑 강제청산시 20봉 지나서 진입허용
exlong("bx") 청산시 30봉 지나서 진입허용
위 3가지 내용을 수식에 추가하여 주십시요
*******************************************************************************
input : b1(280),X1(4600),진입눌림(70),진입돌파(210),청산눌림(100),청산돌파(270),거래횟수(20);
input : stop(80000),trail(230000);
var : T1(0,data1),entry(0,data1);
var : LL(0,data2),EH(0,data2),E1(0,data2),H1(0,data2);
var : i1(0,data2),S1(0,data2),L1(0,data2);
var : DH2(0,data2),DL2(0,data2);
if data1(Bdate != Bdate[1]) Then
T1 = TotalTrades;
if data2(Bdate != Bdate[1]) Then{
E1 = 0;
DH2 = data2(H);
DL2 = data2(L);
}
if data2(H > DH2) Then
DH2 = data2(H);
if data2(L < DL2) Then
DL2 = data2(L);
if MarketPosition == 0 Then
entry = TotalTrades-T1;
Else
entry = (TotalTrades-T1)+1;
if MarketPosition == 0 and entry == 0 Then{
if data2(E1 == 0 and C >= DL2+PriceScale*B1 and C[1] < DL2+PriceScale*B1) Then{
E1 = 1;
H1 = data2(H);
i1 = data2(index);
}
if data2(E1 == 1 and index > i1) then{
if data2(H > H1) Then
H1 = data2(H);
if data2(L <= H1-PriceScale*진입눌림) Then{
E1 = 2;
i1 = data2(index);
S1 = H1;
}
}
if data2(E1 == 2 and index > i1 and C >= S1+PriceScale*진입돌파) Then{
buy("b");
}
}
if MarketPosition == 1 Then{
if entry >= 1 then{
if CurrentContracts > CurrentContracts[1] Then{
EH = data2(H);
E1 = 0;
}
if data2(H > EH) Then{
EH = data2(H);
E1 = 0;
}
if data2(E1 == 0 and C <= EH-PriceScale*X1) Then{
E1 = 1;
L1 = data2(L);
i1 = data2(index);
}
if data2(E1 == 1 and index > i1) Then{
if data2(L < L1) Then
L1 = data2(L);
if data2(H >= L1+PriceScale*청산눌림) Then{
E1 = 2;
I1 = data2(index);
S1 = L1;
}
}
if data2(E1 == 2 and index > i1 and C <= S1-PriceScale*청산돌파) Then{
exitlong("bx");
E1 = 0;
}
}
}
setstoploss(stop,pointstop);
setstoptrailing(trail,0,pointstop);