Переделанные и доработанные индикаторы для Thinkorswim!!!

Статус
Закрыто для дальнейших ответов.

kikos

Старейшина
Регистрация
23.09.14
Сообщения
4,554
Реакции
6,126
kikos не предоставил никакой дополнительной информации.
Всем доброго времени суток! Решил создать тему где те кто торгует с помощью платформы Thinkorswim могут выкладывать свои мысли касаемо индикаторов и того что можно прописать в код! Я понемаю что свои наработки некто не желает выкладывать это и понятно потому что вложено много сил а главное времени которое дороже денег да и вокруг много тех кто ничего не делает а просто качает или того хлещё потом продаёт! В данной теме любой может кинуть индюк с элементарной просьбой сделать аллерт или что то добавить в него! У меня почта иной раз разрывается просто из за подобного!Приведу несколько примеров!!!




Вобщем скрины можно кидать до бесконечности! Можете писать даже самые бредовые идеи, но они могут таковыми показаться для вас а на самом деле возможно реальны!
Я торгую на минутках и начну первым это моё малое!))))))))))))
 
Последнее редактирование модератором:

kikos

Старейшина
Регистрация
23.09.14
Сообщения
4,554
Реакции
6,126
kikos не предоставил никакой дополнительной информации.

fitri

Заблокирован
Регистрация
02.09.14
Сообщения
20
Реакции
0
fitri не предоставил никакой дополнительной информации.
как избежать одну свечу раньше?
 

fitri

Заблокирован
Регистрация
02.09.14
Сообщения
20
Реакции
0
fitri не предоставил никакой дополнительной информации.
как избежать раннего свечу 1
 

kikos

Старейшина
Регистрация
23.09.14
Сообщения
4,554
Реакции
6,126
kikos не предоставил никакой дополнительной информации.

Lawrencevkim

Thinkorswim Coder
Модератор
Регистрация
12.06.14
Сообщения
1,181
Реакции
1,865
Lawrencevkim не предоставил никакой дополнительной информации.
а парень молодец, знает что еще одно сообщение на английском и его заблкируют))
 

fitri

Заблокирован
Регистрация
02.09.14
Сообщения
20
Реакции
0
fitri не предоставил никакой дополнительной информации.
see
 

Вложения

  • russia.jpg
    russia.jpg
    205.2 КБ · Просмотры: 161

kuzinvitaliy

Местный
Регистрация
08.03.15
Сообщения
334
Реакции
179
kuzinvitaliy не предоставил никакой дополнительной информации.

kikos

Старейшина
Регистрация
23.09.14
Сообщения
4,554
Реакции
6,126
kikos не предоставил никакой дополнительной информации.
Тут тоже было бы не плохо прописать в код, чтобы стрелы на уже развернувшихся свечах не показывались.
#KIKOS
#CCI counter vs ValueCharts SIGNALS and Tester by Kim 1
#24.08.2015
#Условия появления сигнала:
#имеем пробитее одного из уровней ВалиеЧартс
#на следующем из баров имеем сигнал от CCI
#если сигнал сохроняется до закрытия бара то входим в
#торг экспирация 5 - 10 мин на графиках М1
###########################################
############### VCharts ##############
declare upper;

input length = 5;
input capSpikesAt = 10;

def VarP = Round(length / 5);
def VarA = Highest(high, VarP) - Lowest(low, VarP);
def VarR1 = if VarA == 0 and VarP == 1 then AbsValue(close - close[VarP]) else VarA;
def VarB = Highest(high, VarP)[VarP + 1] - Lowest(low, VarP)[VarP];
def VarR2 = if VarB == 0 and VarP == 1 then AbsValue(close[VarP] - close[VarP * 2]) else VarB;
def VarC = Highest(high, VarP)[VarP * 2] - Lowest(low, VarP)[VarP * 2];
def VarR3 = if VarC == 0 and VarP == 1 then AbsValue(close[VarP * 2] - close[VarP * 3]) else VarC;
def VarD = Highest(high, VarP)[VarP * 3] - Lowest(low, VarP)[VarP * 3];
def VarR4 =
if VarD == 0 and VarP == 1 then AbsValue(close[VarP * 3] - close[VarP * 4]) else VarD;
def VarE = Highest(high, VarP)[VarP * 4] - Lowest(low, VarP)[VarP * 4];
def VarR5 = if VarE == 0 and VarP == 1 then AbsValue(close[VarP * 4] - close[VarP * 5]) else VarE;
def LRange = ((VarR1 + VarR2 + VarR3 + VarR4 + VarR5) / 5) * 0.2;

def Var0 = if AbsValue(close - close[1]) > (high - low) then AbsValue(close - close[1]) else (high - low);
def LRange2 = if high == low then Average(AbsValue(close - close[1]), 5) * 0.2 else Average(Var0, 5) * 0.2;

def range = high + low;
def delta = high - low;
def median = range / 2;
def floatingAxis = Average(median, length);
def dynamicVolatilityUnit = if length <= 7 then LRange2 else LRange;
def relativeHigh = (high - floatingAxis) / dynamicVolatilityUnit;
def relativeLow = (low - floatingAxis) / dynamicVolatilityUnit;
def relativeOpen = (open - floatingAxis) / dynamicVolatilityUnit;
def relativeClose = (close - floatingAxis) / dynamicVolatilityUnit;

def _high = Min(relativeHigh, capSpikesAt);
def _low = Max(relativeLow, -capSpikesAt);

def "High" = _high;
def "Low" = _low;

def "Significantly O/B" = 8;
def "Significantly O/S" = -8;

def downvc = "High" > "Significantly O/B";
def upvc = "Low" < "Significantly O/S";

############# CCI counter #############

# not touching the CCI calc, but change default OB/OS to +45/-45
input lengthc = 14;
input over_sold = -170;
input over_bought = 170;

def price = close + low + high;
def linDev = LinDev(price, lengthc);

## i'll change the CCI Variable to a Rec .. not happy using plot with its implicit variable declaration.....
rec CCIv = if linDev == 0 then 0 else (price - Average(price, lengthc)) / linDev / 0.015;

## back to original CCI study code
def CCI = CCIv;
def OverBought = over_bought;
def ZeroLine = 0;
def OverSold = over_sold;

## Counter section ... we flag a suqare for decreasing values
def CCI_Flagpos = 300;
def Count_up = CCIv > over_bought and CCIv < CCIv[1] ;
def Count_Dn = CCIv < over_sold and CCIv > CCIv[1];

def downcc = if Count_up then CCI_Flagpos else 0;
;
def upcc = if Count_Dn then -CCI_Flagpos else 0;
;

########## plot Arrow ###########
plot up = if open > close and upvc[1] and upcc then 1 else 0;
plot down = if open < close and downvc[1] and downcc then 1 else 0;

up.SetPaintingStrategy(PaintingStrategy.BOOLEAN_ARROW_UP);
up.SetLineWeight(5);
up.SetDefaultColor(Color.WHITE);
Alert (up, "UP", Alert.BAR, Sound.Ring);

down.SetPaintingStrategy(PaintingStrategy.BOOLEAN_ARROW_DOWN);
down.SetLineWeight(5);
down.SetDefaultColor(Color.WHITE);
Alert(down, "DOWN", Alert.BAR, Sound.Ring);

AddLabel(Down, "$", Color.RED);
AddLabel(up, "$", Color.GREEN);
 

figo78

Непризнанный
Регистрация
04.10.14
Сообщения
52
Реакции
7
figo78 не предоставил никакой дополнительной информации.
Здраствуйте Фёдор подскажите пожалуйста реально ли сделать таой индикатор-блокератор для ТОС чтоб например за 10 мин до нвости или до открытия сесии вырубал сигналы ,а потом врубал или рисовал какой-нибуть фон , будильники и таймеры не помогают , постоянно влетаю. Cпасибо
 

kikos

Старейшина
Регистрация
23.09.14
Сообщения
4,554
Реакции
6,126
kikos не предоставил никакой дополнительной информации.
Здраствуйте Фёдор подскажите пожалуйста реально ли сделать таой индикатор-блокератор для ТОС чтоб например за 10 мин до нвости или до открытия сесии вырубал сигналы ,а потом врубал или рисовал какой-нибуть фон , будильники и таймеры не помогают , постоянно влетаю. Cпасибо
Можно попробовать сделать чтоб график просто в определённое время какое вы сами поставите перед торгами не было видно или просто фон графика в определённый промежуток времени которое так же вы сами напишете перед торгами окрашивался в другой цвет но это не бесплатно!
 

figo78

Непризнанный
Регистрация
04.10.14
Сообщения
52
Реакции
7
figo78 не предоставил никакой дополнительной информации.
Можно попробовать сделать чтоб график просто в определённое время какое вы сами поставите перед торгами не было видно или просто фон графика в определённый промежуток времени которое так же вы сами напишете перед торгами окрашивался в другой цвет но это не бесплатно!
я понял спасибо.
 

kuzinvitaliy

Местный
Регистрация
08.03.15
Сообщения
334
Реакции
179
kuzinvitaliy не предоставил никакой дополнительной информации.
#KIKOS
#CCI counter vs ValueCharts SIGNALS and Tester by Kim 1
#24.08.2015
#Условия появления сигнала:
#имеем пробитее одного из уровней ВалиеЧартс
#на следующем из баров имеем сигнал от CCI
#если сигнал сохроняется до закрытия бара то входим в
#торг экспирация 5 - 10 мин на графиках М1
###########################################
############### VCharts ##############
declare upper;

input length = 5;
input capSpikesAt = 10;

def VarP = Round(length / 5);
def VarA = Highest(high, VarP) - Lowest(low, VarP);
def VarR1 = if VarA == 0 and VarP == 1 then AbsValue(close - close[VarP]) else VarA;
def VarB = Highest(high, VarP)[VarP + 1] - Lowest(low, VarP)[VarP];
def VarR2 = if VarB == 0 and VarP == 1 then AbsValue(close[VarP] - close[VarP * 2]) else VarB;
def VarC = Highest(high, VarP)[VarP * 2] - Lowest(low, VarP)[VarP * 2];
def VarR3 = if VarC == 0 and VarP == 1 then AbsValue(close[VarP * 2] - close[VarP * 3]) else VarC;
def VarD = Highest(high, VarP)[VarP * 3] - Lowest(low, VarP)[VarP * 3];
def VarR4 =
if VarD == 0 and VarP == 1 then AbsValue(close[VarP * 3] - close[VarP * 4]) else VarD;
def VarE = Highest(high, VarP)[VarP * 4] - Lowest(low, VarP)[VarP * 4];
def VarR5 = if VarE == 0 and VarP == 1 then AbsValue(close[VarP * 4] - close[VarP * 5]) else VarE;
def LRange = ((VarR1 + VarR2 + VarR3 + VarR4 + VarR5) / 5) * 0.2;

def Var0 = if AbsValue(close - close[1]) > (high - low) then AbsValue(close - close[1]) else (high - low);
def LRange2 = if high == low then Average(AbsValue(close - close[1]), 5) * 0.2 else Average(Var0, 5) * 0.2;

def range = high + low;
def delta = high - low;
def median = range / 2;
def floatingAxis = Average(median, length);
def dynamicVolatilityUnit = if length <= 7 then LRange2 else LRange;
def relativeHigh = (high - floatingAxis) / dynamicVolatilityUnit;
def relativeLow = (low - floatingAxis) / dynamicVolatilityUnit;
def relativeOpen = (open - floatingAxis) / dynamicVolatilityUnit;
def relativeClose = (close - floatingAxis) / dynamicVolatilityUnit;

def _high = Min(relativeHigh, capSpikesAt);
def _low = Max(relativeLow, -capSpikesAt);

def "High" = _high;
def "Low" = _low;

def "Significantly O/B" = 8;
def "Significantly O/S" = -8;

def downvc = "High" > "Significantly O/B";
def upvc = "Low" < "Significantly O/S";

############# CCI counter #############

# not touching the CCI calc, but change default OB/OS to +45/-45
input lengthc = 14;
input over_sold = -170;
input over_bought = 170;

def price = close + low + high;
def linDev = LinDev(price, lengthc);

## i'll change the CCI Variable to a Rec .. not happy using plot with its implicit variable declaration.....
rec CCIv = if linDev == 0 then 0 else (price - Average(price, lengthc)) / linDev / 0.015;

## back to original CCI study code
def CCI = CCIv;
def OverBought = over_bought;
def ZeroLine = 0;
def OverSold = over_sold;

## Counter section ... we flag a suqare for decreasing values
def CCI_Flagpos = 300;
def Count_up = CCIv > over_bought and CCIv < CCIv[1] ;
def Count_Dn = CCIv < over_sold and CCIv > CCIv[1];

def downcc = if Count_up then CCI_Flagpos else 0;
;
def upcc = if Count_Dn then -CCI_Flagpos else 0;
;

########## plot Arrow ###########
plot up = if open > close and upvc[1] and upcc then 1 else 0;
plot down = if open < close and downvc[1] and downcc then 1 else 0;

up.SetPaintingStrategy(PaintingStrategy.BOOLEAN_ARROW_UP);
up.SetLineWeight(5);
up.SetDefaultColor(Color.WHITE);
Alert (up, "UP", Alert.BAR, Sound.Ring);

down.SetPaintingStrategy(PaintingStrategy.BOOLEAN_ARROW_DOWN);
down.SetLineWeight(5);
down.SetDefaultColor(Color.WHITE);
Alert(down, "DOWN", Alert.BAR, Sound.Ring);

AddLabel(Down, "$", Color.RED);
AddLabel(up, "$", Color.GREEN);
Посмотри какие результаты у этого индюка на минутках с эксперацией 1 минута на GBP/USD за сегодня upload_2015-8-25_20-56-52.png
 

Liken

Новичок
Регистрация
19.08.15
Сообщения
8
Реакции
0
Liken не предоставил никакой дополнительной информации.
kuzinvitaliy, можешь скинуть этот индюк?
 

kikos

Старейшина
Регистрация
23.09.14
Сообщения
4,554
Реакции
6,126
kikos не предоставил никакой дополнительной информации.

kikos

Старейшина
Регистрация
23.09.14
Сообщения
4,554
Реакции
6,126
kikos не предоставил никакой дополнительной информации.
Всем доброго времени суток друзья! Вот может кому пригодится держите индюк канальный построенный на МА! Его очень хорошо можно использовать как фильтр обращая внимание на кокой границе цена, от какой оттолкнулась, открылась, от какой сделала отскок и на сколько и так далее вариаций уйма просто , + центральная выполнена в виде трендовой линии меняющей цвет в сторону движения! Вид скользящей, периметр, расстояние между ними можно менять в табло настроек!

Всем профита!!!
 

Вложения

  • S_MA_YrovniSTUDY.ts
    2.2 КБ · Просмотры: 88

vint

Местный
Регистрация
25.11.14
Сообщения
484
Реакции
349
vint не предоставил никакой дополнительной информации.
Да индикатор стоящий! Писался насколько я помню для тф 5 минут и мы его до сих пор используем в торговле.
 

REX2209

Новичок
Регистрация
17.07.15
Сообщения
21
Реакции
7
REX2209 не предоставил никакой дополнительной информации.
Федь, привет. У меня просьба. Можешь переделать индюк чтобы не перерисовывался? На сколько я знаю там надо где-то минуса перед цифрами убрать или наоборот поставить.:) Посмотри , пожалуйста
 

Вложения

  • M_OPTION_1_7_UpdatedSTUDY.ts
    3.2 КБ · Просмотры: 10

kikos

Старейшина
Регистрация
23.09.14
Сообщения
4,554
Реакции
6,126
kikos не предоставил никакой дополнительной информации.
Федь, привет. У меня просьба. Можешь переделать индюк чтобы не перерисовывался? На сколько я знаю там надо где-то минуса перед цифрами убрать или наоборот поставить.:) Посмотри , пожалуйста
Вот первый вариант!!
declare Upper;

input AlertsOn = no;
input TypeMA = {default EMA, SMA};
input MA_length = 8;
input MO_length = 25;
input PC_length = 14;
input BB_Period = 20;
input BB_Dev = 2.0;
input CMAFactor = 0.004;
input useDisplacement = yes;

def price = Close;
def UMOBR = Highest(high[1], PC_length);
def LOMOB = Lowest(low[1], PC_length);
def MSMOB = (UMOBR + LOMOB) / 2;
def displacement = (MO_length / 2) + 1;
def dPrice = if useDisplacement then hl2[displacement] else hl2;

rec CMA = if !IsNaN(dPrice) then Average(dPrice, AbsValue(12)) else CMA[1] + (CMA[1] - CMA[2]);

#def ExtremeBand = CMA * 0.004 / 100;
def EOMOB = CMA * CMAFactor / 100;
#def NIMOB = CMA * 0.008 / 100;

def UMGOOB = if !IsNaN(price) then CMA + EOMOB else Double.Nan;
def LMGOOB = if !IsNaN(price) then CMA - EOMOB else Double.Nan;

def sDev = stdev(data = price, length = BB_Period);
def JMMOL = ExpAverage(data = price, length = BB_Period);
def JCMOL = JMMOL + -BB_dev * sDev;
def JCMOU = JMMOL + BB_Dev * sDev;

plot MOUp = If low <= LMGOOB and Price crosses below LOMOB then low else Double.NaN;;
MOUp.SetPaintingStrategy(PaintingStrategy.ARROW_UP);
MOUp.SetDefaultColor(Color.WHITE);
MOUp.SetLineWeight(3);
Alert( MOUp, "MOMAIN UP", Alert.BAR, Sound.ding);
MOUp.HideBubble();
MOUp.HideTitle();

plot MODn = If high >= UMGOOB and Price crosses above UMOBR then high else Double.NaN;;
MODn.SetPaintingStrategy(PaintingStrategy.ARROW_DOWN);
MODn.SetDefaultColor(Color.WHITE);
MODn.SetLineWeight(3);
Alert( MODn, "MOMAIN DN", Alert.BAR, Sound.ding);
MODn.HideBubble();
MODn.HideTitle();

plot MOMUp = If low <= LMGOOB and price crosses below MSMOB then low else Double.NaN;;
MOMUp.SetPaintingStrategy(PaintingStrategy.ARROW_UP);
MOMUp.SetDefaultColor(Color.YELLOW);
MOMUp.SetLineWeight(3);
Alert( MOMUp, "MOMAIN UP", Alert.BAR, Sound.ding);
MOMUp.HideBubble();
MOMUp.HideTitle();

plot MOMDn = If high >= UMGOOB and Price crosses above MSMOB then high else Double.NaN;;
MOMDn.SetPaintingStrategy(PaintingStrategy.ARROW_DOWN);
MOMDn.SetDefaultColor(Color.YELLOW);
MOMDn.SetLineWeight(3);
Alert( MOMDn, "MOMAIN DN", Alert.BAR, Sound.ding);
MOMDn.HideBubble();
MOMDn.HideTitle();

plot JCMOUp = If low <= LMGOOB and Price crosses below JMMOL then low else Double.NaN;;
JCMOUp.SetPaintingStrategy(PaintingStrategy.ARROW_UP);
JCMOUp.SetDefaultColor(Color.YELLOW);
JCMOUp.SetLineWeight(3);
Alert( JCMOUp, "MOADIT UP", Alert.BAR, Sound.ding);
JCMOUp.HideBubble();
JCMOUp.HideTitle();

plot JCMODn = If high >= UMGOOB and Price crosses above JMMOL then high else Double.NaN;;
JCMODn.SetPaintingStrategy(PaintingStrategy.ARROW_DOWN);
JCMODn.SetDefaultColor(Color.YELLOW);
JCMODn.SetLineWeight(3);
Alert( JCMODn, "MOADIT DN", Alert.BAR, Sound.ding);
JCMODn.HideBubble();
JCMODn.HideTitle();

plot MA;
switch (TypeMA) {
case EMA:
MA = ExpAverage(price[-0], MA_length);
case SMA:
MA = Average(price[-0], MA_length);
}
MA.AssignValueColor(if MA > MA[1] then Color.UPTICK else Color.DOWNTICK);
MA.SetLineWeight(3);
MA.HideBubble();
MA.HideTitle();

plot UpperBand = UMOBR;
UpperBand.SetDefaultColor(GetColor(5));
UpperBand.SetLineWeight(2);
UpperBand.HideBubble();
UpperBand.HideTitle();

plot LowerBand = LOMOB;
LowerBand.SetDefaultColor(GetColor(6));
LowerBand.SetLineWeight(2);
LowerBand.HideBubble();
LowerBand.HideTitle();




Вот второй вариант!!

declare Upper;

input AlertsOn = no;
input TypeMA = {default EMA, SMA};
input MA_length = 8;
input MO_length = 25;
input PC_length = 14;
input BB_Period = 20;
input BB_Dev = 2.0;
input CMAFactor = 0.004;
input useDisplacement = yes;

def price = Close;
def UMOBR = Highest(high[1], PC_length);
def LOMOB = Lowest(low[1], PC_length);
def MSMOB = (UMOBR + LOMOB) / 2;
def displacement = 0;
def dPrice = if useDisplacement then hl2[displacement] else hl2;

rec CMA = if !IsNaN(dPrice) then Average(dPrice, AbsValue(12)) else CMA[1] + (CMA[1] - CMA[2]);

#def ExtremeBand = CMA * 0.004 / 100;
def EOMOB = CMA * CMAFactor / 100;
#def NIMOB = CMA * 0.008 / 100;

def UMGOOB = if !IsNaN(price) then CMA + EOMOB else Double.Nan;
def LMGOOB = if !IsNaN(price) then CMA - EOMOB else Double.Nan;

def sDev = stdev(data = price, length = BB_Period);
def JMMOL = ExpAverage(data = price, length = BB_Period);
def JCMOL = JMMOL + -BB_dev * sDev;
def JCMOU = JMMOL + BB_Dev * sDev;

plot MOUp = If low <= LMGOOB and Price crosses below LOMOB then low else Double.NaN;;
MOUp.SetPaintingStrategy(PaintingStrategy.ARROW_UP);
MOUp.SetDefaultColor(Color.WHITE);
MOUp.SetLineWeight(3);
Alert( MOUp, "MOMAIN UP", Alert.BAR, Sound.ding);
MOUp.HideBubble();
MOUp.HideTitle();

plot MODn = If high >= UMGOOB and Price crosses above UMOBR then high else Double.NaN;;
MODn.SetPaintingStrategy(PaintingStrategy.ARROW_DOWN);
MODn.SetDefaultColor(Color.WHITE);
MODn.SetLineWeight(3);
Alert( MODn, "MOMAIN DN", Alert.BAR, Sound.ding);
MODn.HideBubble();
MODn.HideTitle();

plot MOMUp = If low <= LMGOOB and price crosses below MSMOB then low else Double.NaN;;
MOMUp.SetPaintingStrategy(PaintingStrategy.ARROW_UP);
MOMUp.SetDefaultColor(Color.YELLOW);
MOMUp.SetLineWeight(3);
Alert( MOMUp, "MOMAIN UP", Alert.BAR, Sound.ding);
MOMUp.HideBubble();
MOMUp.HideTitle();

plot MOMDn = If high >= UMGOOB and Price crosses above MSMOB then high else Double.NaN;;
MOMDn.SetPaintingStrategy(PaintingStrategy.ARROW_DOWN);
MOMDn.SetDefaultColor(Color.YELLOW);
MOMDn.SetLineWeight(3);
Alert( MOMDn, "MOMAIN DN", Alert.BAR, Sound.ding);
MOMDn.HideBubble();
MOMDn.HideTitle();

plot JCMOUp = If low <= LMGOOB and Price crosses below JMMOL then low else Double.NaN;;
JCMOUp.SetPaintingStrategy(PaintingStrategy.ARROW_UP);
JCMOUp.SetDefaultColor(Color.YELLOW);
JCMOUp.SetLineWeight(3);
Alert( JCMOUp, "MOADIT UP", Alert.BAR, Sound.ding);
JCMOUp.HideBubble();
JCMOUp.HideTitle();

plot JCMODn = If high >= UMGOOB and Price crosses above JMMOL then high else Double.NaN;;
JCMODn.SetPaintingStrategy(PaintingStrategy.ARROW_DOWN);
JCMODn.SetDefaultColor(Color.YELLOW);
JCMODn.SetLineWeight(3);
Alert( JCMODn, "MOADIT DN", Alert.BAR, Sound.ding);
JCMODn.HideBubble();
JCMODn.HideTitle();

plot MA;
switch (TypeMA) {
case EMA:
MA = ExpAverage(price[-0], MA_length);
case SMA:
MA = Average(price[-0], MA_length);
}
MA.AssignValueColor(if MA > MA[1] then Color.UPTICK else Color.DOWNTICK);
MA.SetLineWeight(3);
MA.HideBubble();
MA.HideTitle();

plot UpperBand = UMOBR;
UpperBand.SetDefaultColor(GetColor(5));
UpperBand.SetLineWeight(2);
UpperBand.HideBubble();
UpperBand.HideTitle();

plot LowerBand = LOMOB;
LowerBand.SetDefaultColor(GetColor(6));
LowerBand.SetLineWeight(2);
LowerBand.HideBubble();
LowerBand.HideTitle();
 
  • Like
Реакции: emo
Статус
Закрыто для дальнейших ответов.
Верх Низ