欢迎光临
专业期货策略平台

开拓者道氏交易理论源码下载

在技术分析领域,道氏理论是所有市场技术分析(包括波浪理论、江恩理论、缠论等等)的鼻祖,一切技术分析皆建立在道氏理论总结的三大基石之上。

一、市场行为反映一切

众人对任何事情所知的一切,即使是与金融方面非常间接的消息,也会以信息的形式流入股市。而股票市场就通过其自身的价格变动,来体现股市在感知信息之后所导致的变化。

简单来说,任何消息无论利好还是利空,最终都会反映在股价的变动上,这是技术分析的基础。

二、价格呈趋势变动

根据物理学上的动力法则,趋势的运行将会持续,直到有反转的现象产生为止。

事实上价格虽然上下波动,但终究是朝一定的方向前进的,因此技术分析希望利用图形或指标,尽早确定价格趋势及发现反转的信号,以掌握时机进行交易。

按照种类划分,趋势分为三种:上升趋势、下降趋势和无趋势(也就是盘整震荡)。

按照时间划分,每种趋势又分为三种:长期趋势、中期趋势、短期趋势。

那么组合一下,趋势就会有明确的定义,比如:长期上升趋势就是牛市;长期下降趋势就是熊市;短期上升趋势就是反弹;短期下降趋势就是回调等等。

注意,所谓的长期、中期、短期只是时间的笼统概念,每个交易者对时间的定义是不同。

就好比长线交易者的长期可能是五、六年,而对超短线交易者来说两周就算长期了。

所以,在研究长期、中期、短期时,一定要搞清楚时间单位,具体到日、周、月、年。

三、历史会重演

这是从人的心理因素方面考虑的,交易无非是一个追求的行为,不论是昨天、今天或明天,这个动机都不会改变。

因此,在这种心理状态下,交易将趋于一定的模式,而导致历史重演。

所以,过去价格的变动方式,在未来可能不断发生,值得研究,并且利用统计分析的方法,从中发现一些有规律的图形,整理一套有效的操作原则。

比如头肩底、圆弧底、三角形、楔形等等形态,以前出现过,现在出现过,以后还会出现。

历史会重演是技术分析有效性的核心。

下面我们来看一下开拓者的道氏理论源代码:

Params
Numeric ATime(918);
Numeric CTime(1510);
Numeric Lot(1);
Numeric MoneyLoss(0.6);
Numeric BarCross(1);
Numeric Length(5);

Vars
Numeric bTime(0);
Numeric MyClose(0);
Numeric MyDiff(0);
NumericSeries estP(0);
NumericSeries ExitP(0);
NumericSeries Position(0);
NumericSeries est(0);
NumericSeries est1(0);
NumericSeries est2(0);
NumericSeries est3(0);

Bool bTimeCon;
Bool BarUpCon;
Bool BarDownCon;
Bool BarExitCon;
Bool LongOpenCon;
Bool ShortOpenCon;
Bool LongExitCon;
Bool ShortExitCon;

Begin

If (Date != Date[1])
{
est = Open;
est1 = Open;
est2 = Open;
est3 = Open;
estP = 0;
ExitP = 0;
Position = 0;
MyClose = Open;
}
Else
{
est = est[1];
est1 = est1[1];
est2 = est2[1];
est3 = est3[1];
estP = estP[1];
ExitP = ExitP[1];
Position = Position[1];
If(Length != 0) MyClose = Average(Close[1],Length);
Else MyClose = Close[1];
}

MyDiff = MyClose * BarCross / 1000;

bTime = IntPart(Time*10000);
bTimeCon = (bTime > ATime) And (bTime < CTime);

If((MyClose < est And MyClose < est1) Or (MyClose > est And MyClose > est1)) est = MyClose;
If(((MyClose - est) > MyDiff And est < est1) Or ((est - MyClose) > MyDiff And est > est1))
{
est3 = est2;
est2 = est1;
est1 = est;
est = MyClose;
}

If(Position > 0 And High > estP) estP = High;
If(Position < 0 And Low < estP) estP = Low;
If(Position > 0) ExitP = estP * (100 - MoneyLoss) / 100;
If(Position < 0) ExitP = estP * (100 + MoneyLoss) / 100;

If(bTime >= CTime)
{
If (Position > 0)
Sell(lot,Open);
Else
BuyToCover(lot,Open);
}

If(bTimeCon)
{
If (Position == 0)
{
If(est3 < est1 And (est2 / 2000 + est2) <= est And est3 < est2)
{
Buy(lot,Open);
Position = lot;
estP = Open;
ExitP = estP * (100 - MoneyLoss) / 100;
Commentary("LongOpen");

}

Else If(est3 > est1 And (est2 - est2 / 2000) >= est And est3 > est2)
{
SellShort(lot,Open);
Position = lot * -1;
estP = Open;
ExitP = estP * (100 + MoneyLoss) / 100;
Commentary("ShortOpen");
}
}

Else

{
If(Position > 0 And est3 > est1)
{
Sell(lot,Open);
Position = 0;
Commentary("LongExit1");
}

Else If(Position < 0 And est3 < est1)
{
BuyToCover(lot,Open);
Position = 0;
Commentary("ShortExit1");
}

Else If(Position > 0 And Open < ExitP)
{
Sell(lot,Open);
Position = 0;
Commentary("LongExit2");
}

Else If(Position < 0 And Open > ExitP)
{
BuyToCover(lot,Open);
Position = 0;
Commentary("ShortExit2");
}
}
}

Commentary("Position = "+Text(Position));
Commentary("ExitP = "+Text(ExitP));
End
0 0 vote
Article Rating
Click to rate this post!
[Total: 1 Average: 5]
赞(0) 打赏
未经允许不得转载:A期客 » 开拓者道氏交易理论源码下载
订阅
提醒
guest
0 评论
Inline Feedbacks
View all comments

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

0
Would love your thoughts, please comment.x
()
x