예스스탁
예스스탁 답변
2022-02-16 10:57:47
안녕하세요
예스스탁입니다.
input : left(5), right(5);
var : swing_low(0),swing_high(0),Dir(0),cnt(0),LL(0);
Array : line[300](0),DD[300](0);
swing_low = SwingLow(1, L, left, right, left+right+1);
swing_high = SwingHigh(1, H, left, right,left+right+1);
if (swing_low != -1 ) Then
{
var11 = sdate[right];
var12 = STime[right];
var13 = Low[right];
var21 = var11[1];
var22 = var12[1];
var23 = var13[1];
var31 = var21[1];
var32 = var22[1];
var33 = var23[1];
if var23 > 0 Then
{
Value11 = TL_New(var11,var12,var13,sDate,sTime,var13);
TL_SetExtRight(value11,true);
TL_SetColor(value11,BLACk);
TL_SetSize(value11,2);
line[0] = var13;
For cnt = 1 to 299
{
line[cnt] = line[cnt-1][1];
}
}
}
if ( swing_high != -1 ) Then{
var51 = sdate[right];
var52 = STime[right];
var53 = high[right];
var61 = var51[1];
var62 = var52[1];
var63 = var53[1];
var71 = var61[1];
var72 = var62[1];
var73 = var63[1];
if var63 > 0 Then
{
value31 = TL_New(var51,var52,var53,sDate,sTime,Var53);
TL_SetExtRight(value31,true);
TL_SetColor(value31,BLACk);
TL_SetSize(value31,2);
line[0] = var53;
For cnt = 1 to 299
{
line[cnt] = line[cnt-1][1];
}
}
}
if Bdate != Bdate[1] Then
{
For cnt = 0 to 299
{
DD[cnt] = 0;
}
}
Condition1 = False;
Condition2 = False;
LL = Line[0];
For cnt = 0 to 299
{
if line[cnt] > 0 and C > line[cnt] and C[1] < line[cnt] and DD[cnt] == 0 Then
{
Condition1 = true;
DD[cnt] = Line[cnt];
}
if line[cnt] > 0 and C < line[cnt] and C[1] > line[cnt] Then
Condition2 = true;
if Line[cnt] < LL and Line[cnt] > 0 Then
LL = Line[cnt];
}
if Condition1 == true Then
Buy("B");
if MarketPosition == 1 Then
{
if Condition2 == true Then
exitlong("Bx",onclose,DEF,"",Floor(CurrentContracts*(1/2)),1);
if LL > 0 and CrossDown(C,LL) Then
ExitLong("bx1");
}
즐거운 하루되세요
> 김예스 님이 쓴 글입니다.
> 제목 : 수식 문의 드립니다.
> 안녕하세요,
늘 도움 많이받고 있습니다.
아래는 이전에 작성해주셨던 수평 추세선 cross시 매매하는 수식인데,
아래 수식으로 피라미딩 매매를 할 때,
1) 각 봉 위치 이전에 차트에 만들어진 수평선 중 가장 낮은값을 가지는 수평선을 crossdown하면 즉시 전량 매수청산
2) 당일 하루동안 한번 Crossup 하여 매수주문 한 수평선은 당일 매수 조건에서 제외 (다음날부터는 매수가능)
하는 수식을 추가하고 싶습니다.
답변 주심에 항상 감사드립니다.
input : left(5), right(5);
var : swing_low(0),swing_high(0),Dir(0),cnt(0);
Array : line[300](0);
swing_low = SwingLow(1, L, left, right, left+right+1);
swing_high = SwingHigh(1, H, left, right,left+right+1);
if (swing_low != -1 ) Then
{
var11 = sdate[right];
var12 = STime[right];
var13 = Low[right];
var21 = var11[1];
var22 = var12[1];
var23 = var13[1];
var31 = var21[1];
var32 = var22[1];
var33 = var23[1];
if var23 > 0 Then
{
Value11 = TL_New(var11,var12,var13,sDate,sTime,var13);
TL_SetExtRight(value11,true);
TL_SetColor(value11,BLACk);
TL_SetSize(value11,2);
line[0] = var13;
For cnt = 1 to 299
{
line[cnt] = line[cnt-1][1];
}
}
}
if ( swing_high != -1 ) Then{
var51 = sdate[right];
var52 = STime[right];
var53 = high[right];
var61 = var51[1];
var62 = var52[1];
var63 = var53[1];
var71 = var61[1];
var72 = var62[1];
var73 = var63[1];
if var63 > 0 Then
{
value31 = TL_New(var51,var52,var53,sDate,sTime,Var53);
TL_SetExtRight(value31,true);
TL_SetColor(value31,BLACk);
TL_SetSize(value31,2);
line[0] = var53;
For cnt = 1 to 299
{
line[cnt] = line[cnt-1][1];
}
}
}
Condition1 = False;
Condition2 = False;
For cnt = 0 to 299
{
if line[cnt] > 0 and C > line[cnt] and C[1] < line[cnt] Then
Condition1 = true;
if line[cnt] > 0 and C < line[cnt] and C[1] > line[cnt] Then
Condition2 = true;
}
if Condition1 == true Then
Buy("B",onclose,DEF,"",Floor(CurrentContracts*(1/2))),1);
if Condition2 == true Then
exitlong("Bx",onclose,DEF,"",Floor(CurrentContracts*(1/2))),1);