以第一根五分K棒的高點為參考點,觀察接下來的每根五分k棒,當五分k棒出現高點超過第一根五分k棒高點且成交量超過前一根五分k棒的時候進場,接下來只記錄超過前一根五分k棒成交量且創高的五分k棒高低點,持續創高續抱,若跌破最近一根創高的五分k棒低點則出場
If barfreq <> "Min" or Barinterval <>1 then RaiseRuntimeError("請設定頻率為1分鐘");
var:Count(0),BarNumberOfToday(0),i(1),entry1(0);
Array: ArrayH[54](0),ArrayL[54](0),ArrayV[54](0),NumArrayH[](0),NumArrayL[](0);
Array_SetMaxIndex(NumArrayH, Count);
Array_SetMaxIndex(NumArrayL, Count);
If Date <> Date[1] then begin
If Date <> Date[1] then BarNumberOfToday=1 else BarNumberOfToday+=1;//記錄今天的Bar數
for i=1 to 54 begin
If barnumberoftoday = 5*i+1 then begin
ArrayH[i]=Highest(High[1],5);//記錄每個五分k棒的最高值
ArrayL[i]=Lowest(Low[1],5);//記錄每個五分k棒的最低值
ArrayV[i]=v[1]+v[2]+v[3]+v[4]+v[5];//記錄每個五分k棒的總成交量
condition1=ArrayV[i]>ArrayV[i-1] and ArrayH[i]>ArrayH[1];//第一次開始出量且突破開盤五分k棒高點
condition2=q_CurrentCapitalin100Million<50;//股本小於50億
condition3=q_OutSize/(q_InSize+q_OutSize)>0.6;//外盤比>60%
if condition1 and condition2 and condition3 and count=0 then
begin
Count = Count + 1;
NumArrayH[Count] = ArrayH[i];
NumArrayL[Count] = ArrayL[i];
entry1=1;
ret=1;
retmsg="出量突破第一根五分k高點,進場";
end;
if entry1=1 then
begin
if ArrayV[i]>ArrayV[i-1] and ArrayH[i]>NumArrayH[Count] then
begin
Count = Count + 1;
NumArrayH[count] = ArrayH[i];
NumArrayL[count] = ArrayL[i];
if close < NumArrayL[Count] then retmsg="出場";//入場後作多的出場判斷
end;
end;
end;
end;
end;
24 評論