подскажите можно ли написать такой индикатор
Один MACD c определенными параметрами наложить на другой MACD и чтобы он сигналил от пересечения скользящих
пример ниже

evge писал(а):Да, это возможно. Чуть позже размещу здесь код индикатора.
Код: Выделить всё
function Initialize()
{
IndicatorName = "MACDX"; //Пересечение 2х MACD
PriceStudy = false;
AddInput("Input", Inputs.Price);
AddSeries("H1", DrawAs.Line, Color.Red, AxisType.ZeroBased);
AddSeries("H2", DrawAs.Line, Color.Green, AxisType.ZeroBased);
AddSeries("Buy", DrawAs.Custom, Color.Green, true, Axes.Parent);
AddSeries("Sell", DrawAs.Custom, Color.Red, true, Axes.Parent);
AddParameter("PFast1", 10);
AddParameter("PSlow1", 24, 2);
AddParameter("PSig1", 8);
AddParameter("PFast2", 12);
AddParameter("PSlow2", 26, 2);
AddParameter("PSig2", 9);
}
function Evaluate()
{
var M1 = MACD(Input, PFast1, PSlow1, PSig1)["Line"];
var M2 = MACD(Input, PFast2, PSlow2, PSig2)["Line"];
if (M1[1] < M2[1] && M1[0] >= M2[0])
{ Buy = Input[0]; Buy.DrawArrowUp(); }
if (M1[1] > M2[1] && M1[0] <= M2[0])
{ Sell = Input[0]; Sell.DrawArrowDown(); }
H1 = M1[0];
H2 = M2[0];
}
Код: Выделить всё
var M1 = MACD(Input, PFast1, PSlow1, PSig1)["Line"];
var M2 = MACD(Input, PFast2, PSlow2, PSig2)["Line"];
Код: Выделить всё
var M1 = MACD(Input, PFast1, PSlow1, PSig1)["Histogram"];
var M2 = MACD(Input, PFast2, PSlow2, PSig2)["Histogram"];
Vorobey писал(а):приходится точку входа искать аж после 3-4 баров
Вернуться в «Общие вопросы по разработке»
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 225 гостей