Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Визуальные studies




HighLow - Скрипт отрисовывающий high и low текущего дня на графике.
input showOnlyToday = YES;
input Market_Open_Time = 0930;
input Market_Close_Time = 1600;
def day = getDay();
def lastDay = getLastDay();
def isToday = if(day==lastDay,1,0);
def shouldPlot = if(showOnlyToday and isToday, 1,if(!showOnlyToday,1,0));
def pastOpen = if((secondsTillTime(Market_Open_Time) > 0), 0,1);
def pastClose = if((secondsTillTime(Market_Close_Time) > 0), 0,1);
def marketOpen = if(pastOpen and!pastClose, 1, 0);
def firstBar =if (day[1]!= day, day-1, 0);
rec regHoursHigh = if(high > regHoursHigh[1] and marketOpen, high, if(marketOpen and!firstBar, regHoursHigh[1], high));
plot Regular_Hours_High = if(marketOpen and shouldPlot, regHoursHigh, Double.nan);
Regular_Hours_High.SetStyle(curve.points);
Regular_Hours_High.SetDefaultColor(color.green);
Regular_Hours_High.SetLineWeight(2);
rec regHoursLow = if(low < regHoursLow[1] and marketOpen, low, if(marketOpen and regHoursLow[1] > 0 and!firstBar, regHoursLow[1],low));
plot Regular_Hours_Low = if(marketOpen and shouldPlot, regHoursLow, double.nan);
Regular_Hours_Low.SetLineWeight(2);
Regular_Hours_Low.SetStyle(curve.points);
Regular_Hours_Low.SetDefaultColor(color.red);
plot Midpoint_Pivot = if(marketOpen and shouldPlot, (Regular_Hours_High + Regular_Hours_Low) / 2, double.nan);
Midpoint_Pivot.SetLineWeight(2);
Midpoint_Pivot.SetDefaultColor(color.white);
Midpoint_Pivot.SetPaintingStrategy(PaintingStrategy.POINTS);

Color - подсветка графиков
input period = {default DAY, HOUR, WEEK, MONTH, "OPT EXP"};
def POSITION = close(period = period) - open(period = period);
def spread = 0.1 * (high(period = period) - low(period = period));
AssignBackgroundColor(if POSITION > spread then CreateColor(0,40,0) else if POSITION < -spread then CreateColor(40,0,0) else Color.BLACK);

Spy (on upper subgraph)
declare lower;
input symbol = {default "SPY"};
plot PriceClose = close(symbol);

 

 

LowEx (Aggregation: 5)
def c1; if (low[1] >= low[2] && low[2] <= low [3]) then {c1 = low [2];} else {c1=1000;}
def c2; if (low[2] >= low[3] && low[3] <= low [4]) then {c2 = low [3];} else {c2=1000;}
def c3; if (low[3] >= low[4] && low[4] <= low [5]) then {c3 = low [4];} else {c3=1000;}
def c4; if (low[4] >= low[5] && low[5] <= low [6]) then {c4 = low [5];} else {c4=1000;}
def c5; if (low[5] >= low[6] && low[6] <= low [7]) then {c5 = low [6];} else {c5=1000;}
def c6; if (low[6] >= low[7] && low[7] <= low [8]) then {c6 = low [7];} else {c6=1000;}
def c7; if (low[7] >= low[8] && low[8] <= low [9]) then {c7 = low [8];} else {c7=1000;}
def l1 = Min (Min (c1,c2), Min (c3,c4));
def l2 = Min (Min (c5,c6), Min (c7,l1));
def l3 = Lowest (low, 20);
def l4; if (close - l2 < 0) then {l4 = l3;} else {l4 = l2;}
plot h = (close - l4); assignBackgroundColor (if close - l4 <0.1 then color.DARK_rED else color.BLACK);

 

HighEx (Aggregation: 5)
def c1; if (high[1] <= high[2] && high[2] >= high [3]) then {c1 = high [2];} else {c1=0;}
def c2; if (high[2] <= high[3] && high[3] >= high [4]) then {c2 = high [3];} else {c2=0;}
def c3; if (high[3] <= high[4] && high[4] >= high [5]) then {c3 = high [4];} else {c3=0;}
def c4; if (high[4] <= high[5] && high[5] >= high [6]) then {c4 = high [5];} else {c4=0;}
def c5; if (high[5] <= high[6] && high[6] >= high [7]) then {c5 = high [6];} else {c5=0;}
def c6; if (high[6] <= high[7] && high[7] >= high [8]) then {c6 = high [7];} else {c6=0;}
def c7; if (high[7] <= high[8] && high[8] >= high [9]) then {c7 = high [8];} else {c7=0;}
def l1 = Max (Max (c1,c2), Max (c3,c4));
def l2 = Max (Max (c5,c6), Max (c7,l1));
def l3 = Highest (high, 20);
def l4; if (l2 - close < 0) then {l4 = l3;} else {l4 = l2;}
plot h = (l4 - close); assignBackgroundColor (if l4 - close <0.1 then color.DARK_GREEN else color.BLACK);

 




Поделиться с друзьями:


Дата добавления: 2014-12-23; Просмотров: 370; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.011 сек.