当前位置:首页 » 交易知识 » 股票交易vb策略代码
扩展阅读
星群药业的股票代码 2024-11-27 05:45:19

股票交易vb策略代码

发布时间: 2023-10-03 04:59:15

1. 求一股票公式

DRAWGBK(DATE>900101,STRIP(RGB(100,0,0),RGB(30,30,0),1));

Var1:=EMA(HHV(HIGH,500),21);

Var2:=REF(LOW,1);

Var3:=SMA(ABS(LOW-Var2),3,1)/SMA(MAX(LOW-Var2,0),3,1)*100;

Var4:=EMA(IF(CLOSE*1.3,Var3*10,Var3/10),3);

Var5:=LLV(LOW,30);

Var6:=HHV(Var4,30);

Var7:=IF(MA(CLOSE,58),1,0);

Var8:=EMA(IF(LOW<=Var5,(Var4+Var6*2)/2,0),3)/618*Var7;

Var9:=IF(Var8>指高100,100,Var8);

VarA:=EMA((Var7*3+Var8*2+Var9)/6*1.738,21);

VarB:=REF(LOW,1);

VarC:=SMA(ABS(LOW-VarB),3,1)/SMA(MAX(LOW-VarB,0),3,1)*100;

VarD:=EMA(IF(CLOSE*1.35<=VarA,VarC*10,VarC/10),3);

VarE:=LLV(LOW,30);

VarF:=HHV(VarD,30);

Var10:=IF(MA(CLOSE,58),1,0);

V1:=MA(100*(C-LLV(C,34))/(HHV(H,34)-LLV(L,34)),5)-20;

V2:=2*ABS(V1);

V3:=100-(100-3*SMA((C-LLV(L,55))/(HHV(H,55)-LLV(L,55))*100,20,1)+2*SMA(SMA((C-LLV(L,55))/(HHV(H,55)-LLV(L,55))*100,20,1),15,1));

V4:=100-(100-3*SMA((O-LLV(L,55))/(HHV(H,55)-LLV(L,55))*100,20,1)+2*SMA(SMA((O-LLV(L,55))/(HHV(H,55)-LLV(L,55))*100,20,1),15,1));

V5:=(H+L+C)/3;

V6:=(V5-MA(V5,10))/(0.015*AVEDEV(V5,10));

V7:=(V5-MA(V5,30))/(0.015*AVEDEV(V5,30));

V8:=IF(V6>=150ANDV6<200ANDV7>=150ANDV7<孝激200,10,0);

V9:=IF(V6<=-150ANDV6>-200ANDV7<=-150ANDV7>-200,-10,V8);

VA:=(C-MA(C,13))/MA(C,13)*100;

VB:=100-ABS(VA);

VE:=REF(L,1)*0.9;

VF:=L*0.9;

V10:=(VF*V+VE*(CAPITAL-V))/CAPITAL;

V11:=EMA(V10,30);

V12:=V11-C;

V13:=REF(C,1);

V14:=SMA(MAX(C-V13,0),7,1)/SMA(ABS(C-V13),7,1)*100;

V15:=SMA(MAX(C-V13,0),13,1)/SMA(ABS(C-V13),13,1)*100;

V16:=BARSCOUNT(C);

V17:=SMA(MAX(C-REF(C,1),0),6,1)/SMA(ABS(C-REF(C,1)),6,1)*100;

V18:=((-100)*(HHV(H,60)-C)/(HHV(H,60)-LLV(L,60))+50)*2;

V19:=(C-LLV(L,15))/(HHV(H,15)-LLV(L,15))*100;

V1A:=(SMA(V19,4,1)-50)*2;

V1B:=SMA(V1A,3,1);

V1C:=(INDEXC-LLV(INDEXL,14))/(HHV(INDEXH,14)-LLV(INDEXL,14))*100;

V1D:=SMA(V1C,4,1);

V1E:=SMA(V1D,3,1);

V1F:=(HHV(H,30)-C)/C*100;

V20:=IF(V17<=25ANDV18<-95ANDV1F>20ANDV1B<-30ANDV1E<30

ANDV12>=-0.25ANDV14<22ANDV15<巧逗袜28ANDV16>50,80,0);

准备拉升:EMA(IF(LOW<=VarE,(VarD+VarF*2)/2,0),3)/618*Var10;

准备拉升:IF(准备拉升>0,准备拉升,0),STICK,linethick2,COLOR0000ff;

今量:准备拉升;

A1:IF(准备拉升>0,今量*1.2,0),STICK,linethick5,COLOR0000ff;

A2:IF(准备拉升>0,今量*0.8,0),STICK,linethick5,COLOR0066ff;

A3:IF(准备拉升>0,今量*0.6,0),STICK,linethick5,COLOR0099ff;

A4:IF(准备拉升>0,今量*0.4,0),STICK,linethick5,COLOR00ccff;

A5:IF(准备拉升>0,今量*0.2,0),STICK,linethick5,COLOR00ffff;

先知:(CLOSE-MA(CLOSE,25))/MA(CLOSE,25)*100,,colorff00ff;

SSS:=(VAR3ANDVAR4AND(OPEN-REF(CLOSE,1))/REF(CLOSE,1)>-0.07ORVAR5ANDVAR6ANDCROSS(VAR7,79)ORVARCANDCLOSE/COST(8)<=0.8)*100;

抄底王:SSS>0,colorwhite,LINETHICK1;

主力SK1:EMA(100*(C-LLV(LOW,34))/(HHV(H,34)-LLV(LOW,34)),3),colormagenta,linethick2;

均量SD1:EMA(100*(INDEXC-LLV(INDEXL,34))/(HHV(INDEXH,34)-LLV(INDEXL,34)),3),colorgreen,linethick2;

生命线:85,linethick1,coloryellow;

生命禁区:75,linethick1,colorred;

预警系统:(IF((V7>=200ANDV6>=150)ORCROSS(65,主力SK1),15,IF(V7<=-200

ANDV6<=-150,-15,V9))+65);

T2:=C;T3:=主力SK1>60AND预警系统>85AND生命线=95;

T4:=主力SK1>48AND预警系统>85AND生命线<95;

T5:=均量SD1<-38AND预警系统<85;

T6:=抄底王>50AND生命线<90;

T7:=V3>REF(V4,1)ANDV>REF(V,1)ANDC>REF(C,1);

DRAWTEXT(CROSS(主力SK1,生命禁区),60,'警惕!!'),colorcyan;

DRAWTEXT(CROSS(主力SK1,生命禁区),85,'减磅'),ColorFF6800;

DRAWTEXT(CROSS(主力SK1,生命禁区),75,'▼注意.SK1向上持有.向下立即卖出'),colorblue;

DRAWTEXT(T2ANDCOUNT(T2,30)=1,55,'下降通道!'),COLOR00FFFF;

DRAWTEXT(T3ANDCOUNT(T3,30)=1,55,'上涨过急!'),COLOR00FFFF;

DRAWTEXT(T4ANDCOUNT(T4,30)=1,75,'庄家出货!'),COLOR00FFFF;

DRAWTEXT(T5ANDCOUNT(T5,30)=1,50,'有小反弹!'),COLOR00FFFF;

DRAWTEXT(T6ANDCOUNT(T6,30)=1,30,'抢反弹!'),COLOR00FFFF;

DRAWTEXT(T7ANDCOUNT(T7,30)=1,30,'资金进场!'),COLOR00FFFF;DRAWGBK(DATE>900101,STRIP(RGB(100,0,0),RGB(30,30,0),1));

AA1:=AMOUNT/V;BB1:=L<AA1*0.9;

CC1:=(C-REF(C,1))/REF(C,1)*100>1.2;DD1:=L<MA(C,5)*0.921;EE1:=V<MA(V,5)*1.5;

FF1:=BB1ANDCC1ANDDD1ANDEE1;DRAWTEXT(FF1,(LOW*0.99),'老鼠仓'),COLOR4080FF;

2. 用VB如何直接获取股票实时数据

可以通过调用ChinaStockWebService的服务来实现获取股票的实时数据,代码如下:

publicstring[]getStockInfo(stringstockcode)
{

//stringurl="http://hq.sinajs.cn/list="+stockcode;
//stockcode某只股票的代码
stringurl="http://hq.sinajs.cn/list=sh600683";
WebClientclient=newWebClient();
client.Headers.Add("Content-Type","text/html;charset=gb2312");
Streamdata=client.OpenRead(url);
StreamReaderreader=newStreamReader(data,Encoding.GetEncoding("gb2312"));
strings=reader.ReadToEnd();
reader.Close();
data.Close();
returns.Split(',');
}

3. 股票指标源代码中的“VB”是指什么

你这是因为代码不全,把下面的代码,粘贴到你公式前面,
V1:=(C*2+H+L)/4*10;
V2:=EMA(V1,13)-EMA(V1,34);
V3:=EMA(V2,5); V4:=2*(V2-V3)*5.5;
主力撤: IF(V4<=0,V4,0),colorblue;
主力进: IF(V4>=0,V4,0),colorff00ff;
V5:=(HHV(INDEXH,8)-INDEXC)/(HHV(INDEXH,8)-LLV(INDEXL,8))*8;
V6:=EMA(3*V5-2*SMA(V5,18,1),5);
V7:=(INDEXC-LLV(INDEXL,8))/(HHV(INDEXH,8)-LLV(INDEXL,8))*10;
V8:=(INDEXC*2+INDEXH+INDEXL)/4;
V9:=EMA(V8,13)-EMA(V8,34);
VA:=EMA(V9,3);
VB:=(V9-VA)/2;
再试一下,可以关注我,有问题再联系我。

4. 股票市场四种交易指令

答:在金融市场上,通常的交易指令有以下四种形式:市价指令(Market Order)、限价指令(Limit Order)、止损指令(Stop Order)、止损限价指令(Stop Limit Order)。其中,前两种指令多用于现货市场,而后两种指令多用于期货和期权市场。

①市价指令,是指投资者在提交指令时只规定数量而不规定价格,经纪商在接到市价指令后应该以最快的速度,并尽可能以当时市场上最好的价格来执行这一指令。市价指令的特点是能够确保成交,但是投资者最后接受的价格可能与他们期望的价格存在差异。

②限价指令,则与市价指令相反,投资者在提交指令时不仅规定数量,而且还规定价格。经纪商在接到限价指令后应以最快的速度提交给市场,但是成交价格必须优于指令规定的价格。如果是买入指令,则买价不高于指令限价;如果是卖出指令,则卖价不低于指令限价。如果订单限价与市价不一致,经纪商只有等待。限价指令的特点是保证成交价格,但不能保证成交。

③止损指令,本质上是一种特殊的限制性市价委托,它是指投资者在指令中约定一个触发价格,当市场价格上升或下降到该触发价格时,止损指令被激活,转化为一个市价指令;否则,该止损指令处于休眠等待状态,不提交到市场执行。

④止损限价指令,是将止损指令与限价指令结合起来的一种指令,在投资者下达的指令中有两个指定价格——触发价格和限制价格。当市场价格上升或下降到该触发价格时,止损指令被激活,转化为一个限价指令,此时成交价格必须优于限价。

5. 在VB.NET中如何使用新浪股票数据接口

这个你的拿钱和新浪那边买个接口 人家给你代码你复制到自己网站里就可以了

6. 定义一个股票类Stock

定义股票的类:
在类模块中输入下列代码。

public symbol as string
public name as string
public currenprice as currency

public sub 显示股票信息()
msgbox(symbol & vbcrlf & name & currency)
end sub

打印图案
private sub print()
dim x as string
dim y as integer
dim z as integer
x=""
for i=0 to 2
y=2-i
z=1+i*2
for j=1 to y
x=x & " "
nex j
for j=1 to z
x=x & "#"
next j
x=x & vbcrlf
next i
msgbox(x)
end sub

没有看到第8题,第7题与股票的问题类似。
本例是用VB答复的,其他语言基本类似。

原来是要Java的:

public class Stock {

private String symbol;
private String name;
private double currentPrice;

public Stock(){

}

public void display(){
System.out.println("(" + this.symbol + ")" + this.name + ":" + this.currentPrice);
}

public String getSymbol() {
return symbol;
}

public void setSymbol(String symbol) {
this.symbol = symbol;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public double getCurrentPrice() {
return currentPrice;
}

public void setCurrentPrice(double currentPrice) {
this.currentPrice = currentPrice;
}
}

7. 如何在 Ricequant 上实现策略

你好!以 [单股票均线策略] 的代码实现为例说一下如何在Ricequant上实现策略吧。

1 确定框架:

[单股票均线策略] 的主要策略框架: 5 日均线高于 30 天均线,则全仓买入股票 5 日均线低于 30 天均线,则卖出所持股票。从我们日常交易的角度,一般交易者的行为可以拆分以下两部分:

1.1 选择标的(初始化):

#在交易之前,我们通常会先选定要交易的股票池或者单个股票

1.2 交易(每天盯盘)

#我们会观察该股票的五日均线和30日均线,并进行比较
#如果该股票的五日均线在30天均线以上,则全仓买入股票
#如果该股票的五日均线在30天均线以下,则全仓卖出(空仓)

那么程序中,我们是怎么做的呢?

先看看 Ricequant 平台中对应的代码框架会是怎么样的吧:

definit(context):
#程序的初始化,预设股票池、设置参数和变量。只运行一次

defhandle(context,bar_dict):
#从回测的开始日期至结束日期,根据选择的频率(日、分钟)循环运行

对照策略思路 及 Ricequant 代码框架,你会发现我们可以很轻松地把 两者结合起来

以上框架也是 Ricequant 平台的最基本也最主要的框架,也就是初始化循环 - 根据选择的频率(日、分钟)循环运行


2 初始化:

选择标的:本策略的交易股票设定为 300059 ”东方财富“。

definit(context):
context.stock="300059.XSHE"#存入目标股票[东方财富]

延伸阅读:

1 在 init 中实现程序的初始化,例如存入目标股票池,设置滑点、基准等参数以及设置其它变量。 context 是一个全局的容器,你可以通过它设置任何全局变量并初始化:如 context.stock 将会在后面代码所被调用到。

2 代码中 # 代表注释,作为代码说明,执行时会被跳过而不为程序所运行。

3 如何填写股票代码:你会发现策略代码中 股票代码后带有后缀,那么它们分别代表什么呢?

后缀为

XSHE 代表在深交所上市交易的股票

XSHG 在上交所上市交易的股票

例子:

300059.XSHE 为深交所上市的东方财富

600000.XSHG 为上交所上市的浦发银行

我们的代码编辑器还提供了非常便利的股票代码自动寻找和补全功能,在 Windows 中你可以用 ctrl+i , Mac 系统你可以用 cmd+i 激活证券代码自动补全功能。如下图:

我们可以看到回测详情中有精致的图表,详细的各项风险收益指标、以及持仓、落单等详情辅助你进一步了解你的策略的表现。

到这里,一个完整的从 [构建策略思路] 到 [策略代码编写] 到 [回测结果检验] 的流程就结束了。

8. 股票公式源码 谁能帮我翻译一下,跪谢了 我实在是看不懂啊

只能劝朋友,别费劲了