以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  交易策略发布专区  (http://weistock.com/bbs/list.asp?boardid=10)
----  [技术指标]成交额排序  (http://weistock.com/bbs/dispbbs.asp?boardid=10&id=8922)

--  作者:z7c9
--  发布时间:2011/11/12 12:44:41
--  [技术指标]成交额排序

runmode:0;

input:length(20,1,60,1);

vector:=27;

variable:stknames[vector]=0;
variable:stkamounts[vector]=0;
variable:stkposes[vector]=0;

stknames[1]:=\'cu00\';
stknames[2]:=\'ru00\';
stknames[3]:=\'zn00\';
stknames[4]:=\'pb00\';
stknames[5]:=\'wr00\';
stknames[6]:=\'l00\';
stknames[7]:=\'ta00\';
stknames[8]:=\'al00\';
stknames[9]:=\'p00\';
stknames[10]:=\'v00\';
stknames[11]:=\'cf00\';
stknames[12]:=\'y00\';
stknames[13]:=\'ro00\';
stknames[14]:=\'srx00\';
stknames[15]:=\'rb00\';
stknames[16]:=\'ax00\';
stknames[17]:=\'if00\';
stknames[18]:=\'b00\';
stknames[19]:=\'j00\';
stknames[20]:=\'m00\';
stknames[21]:=\'fu00\';
stknames[22]:=\'er00\';
stknames[23]:=\'c00\';
stknames[24]:=\'wsx00\';
stknames[25]:=\'wt00\';
stknames[26]:=\'au00\';
stknames[27]:=\'me00\';

stkamounts[1]:=ema(callstock(\'cu00\',vtamount,6,-1),length);
stkamounts[2]:=ema(callstock(\'ru00\',vtamount,6,-1),length);
stkamounts[3]:=ema(callstock(\'zn00\',vtamount,6,-1),length);
stkamounts[4]:=ema(callstock(\'pb00\',vtamount,6,-1),length);
stkamounts[5]:=ema(callstock(\'wr00\',vtamount,6,-1),length);
stkamounts[6]:=ema(callstock(\'l00\',vtamount,6,-1),length);
stkamounts[7]:=ema(callstock(\'ta00\',vtamount,6,-1),length);
stkamounts[8]:=ema(callstock(\'al00\',vtamount,6,-1),length);
stkamounts[9]:=ema(callstock(\'p00\',vtamount,6,-1),length);
stkamounts[10]:=ema(callstock(\'v00\',vtamount,6,-1),length);
stkamounts[11]:=ema(callstock(\'cf00\',vtamount,6,-1),length);
stkamounts[12]:=ema(callstock(\'y00\',vtamount,6,-1),length);
stkamounts[13]:=ema(callstock(\'ro00\',vtamount,6,-1),length);
stkamounts[14]:=ema(callstock(\'srx00\',vtamount,6,-1),length);
stkamounts[15]:=ema(callstock(\'rb00\',vtamount,6,-1),length);
stkamounts[16]:=ema(callstock(\'ax00\',vtamount,6,-1),length);
stkamounts[17]:=ema(callstock(\'if00\',vtamount,6,-1),length);
stkamounts[18]:=ema(callstock(\'b00\',vtamount,6,-1),length);
stkamounts[19]:=ema(callstock(\'j00\',vtamount,6,-1),length);
stkamounts[20]:=ema(callstock(\'fu00\',vtamount,6,-1),length);
stkamounts[21]:=ema(callstock(\'m00\',vtamount,6,-1),length);
stkamounts[22]:=ema(callstock(\'er00\',vtamount,6,-1),length);
stkamounts[23]:=ema(callstock(\'c00\',vtamount,6,-1),length);
stkamounts[24]:=ema(callstock(\'wsx00\',vtamount,6,-1),length);
stkamounts[25]:=ema(callstock(\'wt00\',vtamount,6,-1),length);
stkamounts[26]:=ema(callstock(\'au00\',vtamount,6,-1),length);
stkamounts[27]:=ema(callstock(\'me00\',vtamount,6,-1),length);

for i=1 to vector do begin
 stkposes[i]:=i;
end

for j=2 to vector do begin
 for i=vector downto j do begin
  if stkamounts[i]<stkamounts[i-1] then begin
   t:=stkamounts[i];
   stkamounts[i]:=stkamounts[i-1];
   stkamounts[i-1]:=t;
   t1:=stkposes[i];
   stkposes[i]:=stkposes[i-1];
   stkposes[i-1]:=t1;  
  end
 end
end

for i=1 to vector do begin
 if stricmp(stklabel,stknames[stkposes[vector-i+1]])=0 then begin
  if i<=10 then
   mypos:i,noaxis,coloryellow,linethick2;
 end 
end


--  作者:solarhe2006
--  发布时间:2011/11/12 20:42:28
--  [公告]上海中期北京营业部与金字塔合作
强,金字塔有你更强大!
--  作者:z7c9
--  发布时间:2011/11/21 20:13:12
--  

runmode:0;

input:length(20,1,60,1);

vector:=27;

variable:stknames[vector]=0;
variable:stktrades[vector]=0;
variable:stkposes[vector]=0;

stknames[1]:=\'cu00\';
stknames[2]:=\'ru00\';
stknames[3]:=\'zn00\';
stknames[4]:=\'pb00\';
stknames[5]:=\'wr00\';
stknames[6]:=\'l00\';
stknames[7]:=\'ta00\';
stknames[8]:=\'al00\';
stknames[9]:=\'p00\';
stknames[10]:=\'v00\';
stknames[11]:=\'cf00\';
stknames[12]:=\'y00\';
stknames[13]:=\'ro00\';
stknames[14]:=\'srx00\';
stknames[15]:=\'rb00\';
stknames[16]:=\'ax00\';
stknames[17]:=\'if00\';
stknames[18]:=\'b00\';
stknames[19]:=\'j00\';
stknames[20]:=\'m00\';
stknames[21]:=\'fu00\';
stknames[22]:=\'er00\';
stknames[23]:=\'c00\';
stknames[24]:=\'wsx00\';
stknames[25]:=\'wt00\';
stknames[26]:=\'au00\';
stknames[27]:=\'me00\';

for i=1 to vector do begin 
 for j=1 to length do begin 
  stktrades[i]:=stktrades[i]+callstock(stknames[i],vtvol,6,-j)*(callstock(stknames[i],vthigh,6,-j)-callstock(stknames[i],vtlow,6,-j))*multiplier;
 end
 
 stktrades[i]:=stktrades[i]/length;
end

for i=1 to vector do begin
 stkposes[i]:=i;
end

for j=2 to vector do begin
 for i=vector downto j do begin
  if stktrades[i]<stktrades[i-1] then begin
   t:=stktrades[i];
   stktrades[i]:=stktrades[i-1];
   stktrades[i-1]:=t;
   t1:=stkposes[i];
   stkposes[i]:=stkposes[i-1];
   stkposes[i-1]:=t1;  
  end
 end
end

for i=1 to vector do begin
 if stricmp(stklabel,stknames[stkposes[vector-i+1]])=0 then begin
  if i<=10 then
   mypos:i,noaxis,coloryellow,linethick2;
 end
end

 

runmode:0;

input:length(20,1,60,1);

vector:=27;

variable:stknames[vector]=0;
variable:stktrades[vector]=0;
variable:stkposes[vector]=0;

stknames[1]:=\'cu00\';
stknames[2]:=\'ru00\';
stknames[3]:=\'zn00\';
stknames[4]:=\'pb00\';
stknames[5]:=\'wr00\';
stknames[6]:=\'l00\';
stknames[7]:=\'ta00\';
stknames[8]:=\'al00\';
stknames[9]:=\'p00\';
stknames[10]:=\'v00\';
stknames[11]:=\'cf00\';
stknames[12]:=\'y00\';
stknames[13]:=\'ro00\';
stknames[14]:=\'srx00\';
stknames[15]:=\'rb00\';
stknames[16]:=\'ax00\';
stknames[17]:=\'if00\';
stknames[18]:=\'b00\';
stknames[19]:=\'j00\';
stknames[20]:=\'m00\';
stknames[21]:=\'fu00\';
stknames[22]:=\'er00\';
stknames[23]:=\'c00\';
stknames[24]:=\'wsx00\';
stknames[25]:=\'wt00\';
stknames[26]:=\'au00\';
stknames[27]:=\'me00\';

for i=1 to vector do begin 
 for j=1 to length do begin 
  stktrades[i]:=stktrades[i]+callstock(stknames[i],vtvol,6,-j)*(callstock(stknames[i],vthigh,6,-j)-callstock(stknames[i],vtlow,6,-j))*multiplier;
 end
 
 stktrades[i]:=stktrades[i]/length;
end

for i=1 to vector do begin
 stkposes[i]:=i;
end

for j=2 to vector do begin
 for i=vector downto j do begin
  if stktrades[i]<stktrades[i-1] then begin
   t:=stktrades[i];
   stktrades[i]:=stktrades[i-1];
   stktrades[i-1]:=t;
   t1:=stkposes[i];
   stkposes[i]:=stkposes[i-1];
   stkposes[i-1]:=t1;  
  end
 end
end

for i=1 to vector do begin
 if stricmp(stklabel,stknames[stkposes[vector-i+1]])=0 then begin
  if i<=10 then
   mypos:i,noaxis,coloryellow,linethick2;
 end
end

 


--  作者:z7c9
--  发布时间:2011/12/3 10:50:40
--  

runmode:0;

length:=20;

bkname:=\'连续合约\';

stks:=stkcount(bkname);

variable:stknames[stks]=0;
variable:stktrades[stks]=0;
variable:stkposes[stks]=0;
variable:mypos=0;

if date>ref(date,1) then begin 
 for i=1 to stks do begin
  code:=stkfromblk(bkname,i);
  stknames[i]:=strremove(code,0,2);
 end
 
 for i=1 to stks do begin
  for j=1 to length do begin
   stktrades[i]:=stktrades[i]+callstock(stknames[i],vtvol,6,-j)*(callstock(stknames[i],vthigh,6,-j)-callstock(stknames[i],vtlow,6,-j))*multiplier;
  end
  
  stktrades[i]:=stktrades[i]/length;
 end
 
 for i=1 to stks do begin
  stkposes[i]:=i;
 end
 
 for j=2 to stks do begin
   for i=stks downto j do begin
     if stktrades[i]<stktrades[i-1] then begin
       t:=stktrades[i];
       stktrades[i]:=stktrades[i-1];
       stktrades[i-1]:=t;
       t1:=stkposes[i];
       stkposes[i]:=stkposes[i-1];
       stkposes[i-1]:=t1;  
     end
   end
 end
 
 for i=1 to stks do begin
   if stricmp(stklabel,stknames[stkposes[stks-i+1]])=0 then begin
      mypos:=i;
   end
 end 
end

位置:mypos,linethick0;

[此贴子已经被作者于2011-12-3 10:51:06编辑过]

--  作者:z7c9
--  发布时间:2011/12/3 11:49:24
--  

runmode:0;

length:=20;

bkname:=\'连续合约\';

stks:=stkcount(bkname);

variable:stknames[stks]=0;
variable:stktrades[stks]=0;
variable:stkposes[stks]=0;
variable:mypos=0;
variable:cantrade=0;

if date>ref(date,1) then begin 
 for i=1 to stks do begin
  code:=stkfromblk(bkname,i);
  stknames[i]:=strremove(code,0,2);
 end
 
 for i=1 to stks do begin
  stktrades[i]:=0;

  for j=1 to length do begin
   stktrades[i]:=stktrades[i]+callstock(stknames[i],vtamount,6,-j);
  end
  stktrades[i]:=stktrades[i]/length;
 end
 
 for i=1 to stks do begin
  stkposes[i]:=i;
 end
 
 for j=2 to stks do begin
   for i=stks downto j do begin
     if stktrades[i]<stktrades[i-1] then begin
       t:=stktrades[i];
       stktrades[i]:=stktrades[i-1];
       stktrades[i-1]:=t;
       t1:=stkposes[i];
       stkposes[i]:=stkposes[i-1];
       stkposes[i-1]:=t1;  
     end
   end
 end
 
 for i=1 to stks do begin
   if stricmp(stklabel,stknames[stkposes[stks-i+1]])=0 then begin
      mypos:=i;
   end
 end 
 
 if mypos<=round(stks/3) then
  cantrade:=1;
end

可交易:cantrade,linethick0;