cara,
Hoc programmatum mihi posui et tonum anulum ut infra donavi quotiens signum venditionis vel emendi accipio,sed Difficultas Adversus ego adepto aliquo signo,quae est i recipio acris notificatione pro quolibet signo secundo et plus 80 temporibus pro se secundo ac per hoc meus computer est frigore conficiatur.
Gratias in antecessum pro auxilio tuo solvere hanc quaestionem.
Re optimus,
Jamal Barakat
========================
//+------------------------------------------------------------------+
//| Filename mutata est ForexOFFTrend. mq4 by CrazyChart |
//| SilverTrend .mq4 |
//| SilverTrend revocetur CrazyChart |
//| http://viac.ru/ |
//+------------------------------------------------------------------+
#property copyright "SilverTrend revocetur CrazyChart"
#property link "http://viac.ru/ "
//----
#proprietas indicator_chart_window
#proprietas indicator_buffers " 2
#res indicator_color1 Blue
#proprietas indicator_color2 Red
//---- initus parametri
exter int CountBars = 400;
exter int SSP = 7;
externus duplex Kmin = 1.6;
externus duplex Kmax = 50.6;
externi bool gAlert = Verum; // Switch ad patitur summis
//---- buffers
duplex ExtMapBuffer1[];
duplex ExtMapBuffer2[];
//----
bool gSellAlertGiven = true; // Ad prohibere summis summis
bool gBuyAlertGiven = true; // Ad prohibere summis summis
//+------------------------------------------------------------------+
//| Consuetudinem indicator initialization functionis |
//+------------------------------------------------------------------+
int init()
{
//---- Indicatores
SetIndexStyle(0, DRAW_LINE, 0, 2);
SetIndexBuffer(0, ExtMapBuffer1);
SetIndexStyle(1, DRAW_LINE, 0, 2);
SetIndexBuffer(1, ExtMapBuffer2);
//----
si(CountBars >= Bars)
CountBars = Bars;
SetIndexDrawBegin(0, Bars - CountBars + SSP);
SetIndexDrawBegin(1, Bars - CountBars + SSP);
//----
reditus(0);
}
//+------------------------------------------------------------------+
//| Custos indicator deinitialisation function |
//+------------------------------------------------------------------+
int deinit()
{
reditus(0);
}
//+------------------------------------------------------------------+
//| Consuetudo indicator iteratio functionis |
//+------------------------------------------------------------------+
int satus()
{
int i *,
i2,
currens initium,
counted_bars = IndicatorCounted();
duplex SsMax,
SsMin,
K,
choice1,
val2,
smin,
smax,
pretium;
si(Bars <= SSP + 1)
reditus(0);
//---- initialis nulla
si(counted_bars < SSP + 1)
{
for*(i = 1; ego <= SSP; i++)
ExtMapBuffer1[CountBars-i*] = 0. 0;
for*(i = 1; ego <= SSP; i++)
ExtMapBuffer2[CountBars-i*] = 0. 0;
}
for*(i = CountBars - SSP; ego >= 0; i--)
{
SsMax = High[altissimum(NULL, 0, MODE_HGH, SSP, ego - SSP + 1)];
SsMin = Low[Lowest(NULL, 0, MODE_LOW, SSP, ego - SSP + 1)];
smin = NormalizeDouble((SsMin - (SsMax - SsMin)*Kmin / 100), Digitorum);
smax = NormalizeDouble "((SsMax - (SsMax - SsMin)*Kmax / 100), Digitorum);
ExtMapBuffer1[i-SSP+6] = smax;
ExtMapBuffer2[i-SSP-1] = smax;
val1 = ExtMapBuffer1[0];
val2 = ExtMapBuffer2[0];
si(choice1 > val2)
{
Comment("ïîêَïêà buy ", choice1);
si(gAlert == true && gBuyAlertGiven == true)
{
PlaySound("erectus. wav");
Alert("Buy signal at " + DoubleToStr(choice1, Digitorum) + " on " + Tempus() +
" minute chart");
gBuyAlertGiven = true;
gSellAlertGiven = falsum;
}
}
si(choice1 < val2)
{
Comment("ïًîنàوà sell ", val2);
si(gAlert == true && gSellAlertGiven == true)
{
PlaySound("erectus. wav");
Alert("Sell signal at " + DoubleToStr(val2, Digitorum) + " on " + Tempus()+
" minute chart");
gBuyAlertGiven = falsum;
gSellAlertGiven = verus;
}
}
}
//----
reditus(0);
}
//+------------------------------------------------------------------+