1. [求助]MT4指标-操盘线
多空线我也是听说的,具体怎么样的还是不太清楚~~~~~~~~对了,还有一个问题请教,很多自定义的指标不能象MT中的原有指标那样在所有的历史数据中都显示出来,比如操盘线也是,请问有什么办法可以让其在所有的历史数据中出现,谢谢~~~~~~
2. MT4 指标编写
OrderProfit()可以检测持仓单的盈利情况,对所有持仓单写个循环,将每个单的盈利情况加起来就知道总体的情况了。
下单手数每次翻倍,可以用下面的公式:Lot=0.01*2^n,n代表持仓的单数。
如果还有其它问题,留言。
3. Mt4里的外汇Volume指标是什么意思
该成交量并非真正意义上的成交量,这是一个估计值,其值为该K线下tick价格变动的数量,其背后的意义为如果tick价格变动很快,表示成交量越大;tick价格变动越慢,表示成交量越小。
4. MT4的交易报告中包含哪些重要指数
Deposit / Withdrawal(存/取款) — 在报告周期内,存入或取出资金的量。如果您在报告周期内未进行过任何存/取款操作,此数值为0。
Credit Facility(信用额) — 信用赠金。
Closed Trade P/L(平仓盈/亏) — 报告周期内平仓所获得的盈利/亏损。
Floating P/L(浮动盈/亏) — 报告生成时账户中所有已开设仓位的盈利/亏损。
Margin(保证金) — 报告生成时所有已开设仓位占用的保证金。
Balance(余额) — 报告生成时交易账户的总资金量,包含所有交易和非交易操作结果。
Equity(净值) — 报告生成时的账户净值,计算公式:净值 = 余额 + 信用额 + 浮动盈利 - 浮动亏损。
Free Margin(可用保证金) — 报告生成时,可用来开设新仓位的保证金。计算公式:可用保证金 = 净值 - 保证金。
5. mt4最好用最精确的指标有 用什么方法分析外汇
rsi相对强弱指标
rsi:原理是假设收盘价是买卖双方力道的最终表现与结果,把上涨视为买方力道,下跌视为卖方力道。
公式
rsi=100–(100/1+rs)
rs为相对强度relative
strength=
aun
/
adn
aun表示.n.日内收盘价上涨点数的.n日平均数=∑(上涨点数_i)
/
n
adn表示n日内收盘价下跌点数的n日平均数=∑(下跌点数_i)
/
n
所以rsi亦可改写成
rsi=100*aun
/
(aun+adn)
公式中rs即为买方力道与卖方力道的比,亦即双方相对强度的概念。而rsi则是把相对强度的数值定义在0-100之间,如此更能方便参考使用。而多天期的rsi(即n值较大)其讯号将更具参考性。rsi是一种相当可靠的动能指标。
首先考虑极端值情况。当盘势全面连续上涨情况时,rs会趋近无限大(没有跌的只有涨的,相除则出现无限大),则rsi会趋近于100,因此当行情出现全面多头时,会导致rsi趋近其上限100。在另一方面,当盘势出现全面的跌势,则rs=0。rsi=0所以rsi当行情出现大空头时,rsi会趋近其下限
0。但一般而言,市场行情总在上述二个极端状况之间,因此rsi值会界在0-100间,数值越大,代表买方力道越强。虽然rsi数值越大代表买方力道越强,但强弩之末总会衰竭,因此当rsi大到某一程度时通常开始代表超买现象,需注意反转。同理,当rsi低到某一程度时,通常代表市场出现非理性的卖超现象,表示底部区已近。当rsi在50附近,代表多空力道接近。一般以70以上代表超买,30以下代表超卖。不过亦有研究认为数值应该再更往上及下方延伸方能更精确表现超买及超卖的平均水准。但超买与超卖的数值是不代表买卖讯号的,仅表示走势的折返机率变大。由于rsi可以视为一领先指标,故当rsi指标与盘势发生背离时,则代表盘势即将反转,为买进或卖出的讯号。当股价创新高或新低,但rsi并没有配合创新高或新低时,代表盘势即将发生回档或反弹。由
rsi所形成的w底或m头等型态来作为买卖依据。由于rsi为一敏感的指标,因此可以作其长天期均线来运用,以rsi线是否突破或跌破rsi均线来作分析,当rsi向上突破rsi均线时,则为买进讯号;而rsi跌破rsi均线时,则为卖出讯号。
缺点:rsi指标在高档或低档有时会有钝化的现象,因此会发生过早卖出或买进。
rsi没有明显规则性的买进或卖出讯号,当指针在高档或时,仅能说明情行反转的可能性增高,但并没有办法进一步明确的指出时点。一般而言,rsi的背离讯号通常是事后验证,事前很难看出。由于rsi是一种比率的指标,因此在趋势分析的能力上会较弱。补救措施:可利用长天期的rsi均线与rsi线的关系来作买卖讯号判断.或是以rsi值为样本,去计算其kd值来求得买卖讯号
6. MT4的指标
哦,忘了说了,是MQ4的。
#property indicator_chart_window
#property indicator_buffers 1
#property indicator_color1 Red
//---- indicator parameters
extern int ExtDepth=12;
extern int ExtDeviation=5;
extern int ExtBackstep=3;
//---- indicator buffers
double ZigzagBuffer[];
double HighMapBuffer[];
double LowMapBuffer[];
int level=3; // recounting's depth
bool downloadhistory=false;
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
IndicatorBuffers(3);
//---- drawing settings
SetIndexStyle(0,DRAW_SECTION);
//---- indicator buffers mapping
SetIndexBuffer(0,ZigzagBuffer);
SetIndexBuffer(1,HighMapBuffer);
SetIndexBuffer(2,LowMapBuffer);
SetIndexEmptyValue(0,0.0);
//---- indicator short name
IndicatorShortName("ZigZag("+ExtDepth+","+ExtDeviation+","+ExtBackstep+")");
//---- initialization done
return(0);
}
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
int start()
{
int i, counted_bars = IndicatorCounted();
int limit,counterZ,whatlookfor;
int shift,back,lasthighpos,lastlowpos;
double val,res;
double curlow,curhigh,lasthigh,lastlow;
if (counted_bars==0 && downloadhistory) // history was downloaded
{
ArrayInitialize(ZigzagBuffer,0.0);
ArrayInitialize(HighMapBuffer,0.0);
ArrayInitialize(LowMapBuffer,0.0);
}
if (counted_bars==0)
{
limit=Bars-ExtDepth;
downloadhistory=true;
}
if (counted_bars>0)
{
while (counterZ<level && i<100)
{
res=ZigzagBuffer[i];
if (res!=0) counterZ++;
i++;
}
i--;
limit=i;
if (LowMapBuffer[i]!=0)
{
curlow=LowMapBuffer[i];
whatlookfor=1;
}
else
{
curhigh=HighMapBuffer[i];
whatlookfor=-1;
}
for (i=limit-1;i>=0;i--)
{
ZigzagBuffer[i]=0.0;
LowMapBuffer[i]=0.0;
HighMapBuffer[i]=0.0;
}
}
for(shift=limit; shift>=0; shift--)
{
val=Low[iLowest(NULL,0,MODE_LOW,ExtDepth,shift)];
if(val==lastlow) val=0.0;
else
{
lastlow=val;
if((Low[shift]-val)>(ExtDeviation*Point)) val=0.0;
else
{
for(back=1; back<=ExtBackstep; back++)
{
res=LowMapBuffer[shift+back];
if((res!=0)&&(res>val)) LowMapBuffer[shift+back]=0.0;
}
}
}
if (Low[shift]==val) LowMapBuffer[shift]=val; else LowMapBuffer[shift]=0.0;
//--- high
val=High[iHighest(NULL,0,MODE_HIGH,ExtDepth,shift)];
if(val==lasthigh) val=0.0;
else
{
lasthigh=val;
if((val-High[shift])>(ExtDeviation*Point)) val=0.0;
else
{
for(back=1; back<=ExtBackstep; back++)
{
res=HighMapBuffer[shift+back];
if((res!=0)&&(res<val)) HighMapBuffer[shift+back]=0.0;
}
}
}
if (High[shift]==val) HighMapBuffer[shift]=val; else HighMapBuffer[shift]=0.0;
}
// final cutting
if (whatlookfor==0)
{
lastlow=0;
lasthigh=0;
}
else
{
lastlow=curlow;
lasthigh=curhigh;
}
for (shift=limit;shift>=0;shift--)
{
res=0.0;
switch(whatlookfor)
{
case 0: // look for peak or lawn
if (lastlow==0 && lasthigh==0)
{
if (HighMapBuffer[shift]!=0)
{
lasthigh=High[shift];
lasthighpos=shift;
whatlookfor=-1;
ZigzagBuffer[shift]=lasthigh;
res=1;
}
if (LowMapBuffer[shift]!=0)
{
lastlow=Low[shift];
lastlowpos=shift;
whatlookfor=1;
ZigzagBuffer[shift]=lastlow;
res=1;
}
}
break;
case 1: // look for peak
if (LowMapBuffer[shift]!=0.0 && LowMapBuffer[shift]<lastlow && HighMapBuffer[shift]==0.0)
{
ZigzagBuffer[lastlowpos]=0.0;
lastlowpos=shift;
lastlow=LowMapBuffer[shift];
ZigzagBuffer[shift]=lastlow;
res=1;
}
if (HighMapBuffer[shift]!=0.0 && LowMapBuffer[shift]==0.0)
{
lasthigh=HighMapBuffer[shift];
lasthighpos=shift;
ZigzagBuffer[shift]=lasthigh;
whatlookfor=-1;
res=1;
}
break;
case -1: // look for lawn
if (HighMapBuffer[shift]!=0.0 && HighMapBuffer[shift]>lasthigh && LowMapBuffer[shift]==0.0)
{
ZigzagBuffer[lasthighpos]=0.0;
lasthighpos=shift;
lasthigh=HighMapBuffer[shift];
ZigzagBuffer[shift]=lasthigh;
}
if (LowMapBuffer[shift]!=0.0 && HighMapBuffer[shift]==0.0)
{
lastlow=LowMapBuffer[shift];
lastlowpos=shift;
ZigzagBuffer[shift]=lastlow;
whatlookfor=1;
}
break;
default: return;
}
}
return(0);
}
7. 帮我把股票指标写成MT4指标衷心的谢谢
你这好像是KDJ指标,你在网上搜一下,有相应的mt4下的KDJ指标。
8. 关于 MT4 指标
以我的经验应该不会发生2个指标互相影响的, 除非指标1 刚好 把指标2 画的图形(线或者文字)遮挡住了。