Постов с тегом "ThinkOrSwim": 267

ThinkOrSwim


Скрипт ThinkOrSwim для watchlist

Скрипт ThinkOrSwim для watchlist

Скрипт ищет базы на фигурах или на уровнях вчерашних экстремумов дня. Тоже уровни очень сильные. Имеет 4 цифры для сигналов.

#Base_Figure_PrevHiLow.Скрипт ищет базы на круглых уровнях 50,100 центов или на вчерашних HiLow

def iDiff = 0.01; #максимальное отклонение в центах
def iBars = 4; #число баров для просмотра
def iLowest = lowest(low,iBars);
def iHighest = highest(high,iBars);
def iHiPrevDay = high(period = «DAY»)[1];
def iLowPrevDay = Low(period = «DAY»)[1];
def bBaseLow = fold Lbar = 0 to iBars with Lsumm=1 do if ((low[Lbar]-iLowest)<=iDiff) then Lsumm*1 else Lsumm*0;
def bBaseHigh = fold Hbar = 0 to iBars with Hsumm=1 do if ((iHighest-high[Hbar])<=iDiff) then Hsumm*1 else Hsumm*0;
def iFigureLow = fold FLbar = 1 to iBars+1 with FLsumm do if (low[FLbar] == (Floor(low[FLbar]*2))/2) then FLsumm+1 else FLsumm;
def iFigureHigh = fold FHbar = 1 to iBars+1 with FHsumm do if (high[FHbar] == (Ceil(high[FHbar]*2))/2) then FHsumm+1 else FHsumm;
def iDayLow = fold DLbar = 0 to iBars with DLsumm do if (Low[DLbar] == iHiPrevDay) then DLsumm+1 else DLsumm;
def iDayHigh = fold DHbar = 0 to iBars with DHsumm do if (High[DHbar] == iLowPrevDay) then DHsumm+1 else DHsumm;
plot bBase = if (bBaseLow and iFigureLow ) then 1 else if (bBaseHigh and iFigureHigh ) then 2 else if (bBaseLow and iDayLow) then 3 else if (bBaseHigh and iDayHigh) then 4 else 100;
AssignBackgroundColor (if (bBase == 1 or bBase == 3) then Color.LIGHT_GREEN else if (bBase == 2 or bBase == 4) then Color.LIGHT_RED else Color.black);

Полная библиотека индикаторов в нашем блоге goo.gl/9JRWUi


Скрипт #ThinkOrSwim для #watchlist

Скрипт #ThinkOrSwim для #watchlist


Показывает в колонке сигнал, когда две скользящих средних пересекаются. Настраиваются практически все параметры обеих MA на график в виде индикаторов и все получится очень наглядно.

#MA_Crosses.показывает сигнал, когда две МА пересекают друг друга 
#Cнять галочку Include Extended Session 
#Aggregation обязан быть не больше чем переменная Period в 7 строке 
input price = FundamentalType.CLOSE; input Period = AggregationPeriod.FIVE_MIN; #указать период расчета МА, выбрав из списка: TWO_MIN THREE_MIN FOUR_MIN FIVE_MIN EN_MIN FIFTEEN_MIN TWENTY_MIN THIRTY_MIN HOUR TWO_HOURS FOUR_HOURS DAY TWO_DAYS THREE_DAYS FOUR_DAYS WEEK MONTH OPT_EXP input FastLength = 20; #период быстрой МА input SlowLength = 80; #период медленной МА input averageType = AverageType.simple; 


( Читать дальше )

Скрипт ThinkOrSwim для watchlist

Скрипт ThinkOrSwim для watchlist

Скрипт #ThinkOrSwim для #watchlist

Показывает свечную модель «Шпиль» или, как его еще называют, «Пинбар». Собственных настроек не имеет.

#Pin.Показывает паттерн «Шпиль»
#Cнять галочку Include Extended Session

def low25 = ((high — low) / 100) * 25;
def bSignalDown = open[1] > close[1] and high-open < low25 and high-close <low25;
def bSignalUp = open[1] < close[1] and open-low < low25 and close-low<low25;
plot out = if bSignalUp then 1 else if bSignalDown then 2 else 100;
AssignBackgroundColor (if (out == 1) then Color.LIGHT_GREEN else if (out == 2) then Color.LIGHT_RED else Color.black);
out.AssignValueColor (if out <> 100 then Color.black else Color.CURRENT);

Полная библиотека индикаторов в нашем блоге goo.gl/9JRWUi




Скрипт ThinkOrSwim для watchlist

Скрипт ThinkOrSwim для watchlist
Скрипт ищет базы на круглых уровнях цен, кратных 10 центам. Получаются более частые сигналы, но их нужно лучше фильтровать глазами, потому что надежность их не всегда хорошая.

#Base_Level.Ищет базу, на уровнях 10-20-30 и так далее

def iDiff = 0.01; #максимальное отклонение в центах
def iBars = 4; #число баров для просмотра
def iLowest = lowest(low,iBars);
def iHighest = highest(high,iBars);
def bBaseLow = fold Lbar = 0 to iBars with Lsumm=1 do if ((low[Lbar]-iLowest)<=iDiff) then Lsumm*1 else Lsumm*0;
def bBaseHigh = fold Hbar = 0 to iBars with Hsumm=1 do if ((iHighest-high[Hbar])<=iDiff) then Hsumm*1 else Hsumm*0;
def iLevelLow = fold LLbar = 0 to iBars with LLsumm do if (low[LLbar] == roundDown(low[LLbar],1)) then LLsumm+1 else LLsumm;
def iLevelHigh = fold LHbar = 0 to iBars with LHsumm do if (high[LHbar] == roundUp(High[LHbar],1)) then LHsumm+1 else LHsumm;
plot bBase = if (bBaseLow and iLevelLow ) then 1 else if (bBaseHigh and iLevelHigh ) then 2 else 100;
AssignBackgroundColor (if (bBase == 1) then Color.LIGHT_GREEN else if (bBase == 2) then Color.LIGHT_RED else Color.black);

Переходите в наш блог!!! Там полная библиотека индикаторов goo.gl/9JRWUi

Breakout : Скрипт ThinkOrSwim для watchlist

Breakout : Скрипт ThinkOrSwim для watchlist


Показывает ситуации, когда на вчерашних ценовых экстремумах (которые к тому же еще и на круглых уровнях) происходит пробитие. Тут только одна настройка «максимальное отклонение пробития уровня». Т.е. можно указать, на какое расстояние цена может ускакать после пробития, чтобы вас это устраивало.

#BreakoutPrevHiLow_Figure.Подсвечивает, только что пробитые вчерашние Hi\Low, если это на круглом уровне
#Cнять галочку Include Extended Session

def iDiff = 0.03; #Максимальное отклонение пробития уровня
def iHiPrevDay = high(period = «DAY»)[1];
def iLowPrevDay = Low(period = «DAY»)[1];
def bHiBreakout = (iHiPrevDay < close) and (close < iHiPrevDay + iDiff);
def bLowBreakout = (iLowPrevDay > close) and (close > iLowPrevDay — iDiff);
def bFigurePrevLow = iLowPrevDay == (Floor(iLowPrevDay*2))/2;
def bFigurePrevHi = iHiPrevDay == (Ceil(iHiPrevDay*2))/2;



( Читать дальше )

Скрипт ThinkOrSwim для watchlist


Ищет те же самые базы на любых уровнях, но с небольшим добавлением. В этих базах цена не выходит за рамки определенного ценового канала. Т.е. добавляется еще третья настройка — максимальная ширина канала для базы. За указанный диапазон база не должна выйти, чтоб появился сигнал. Такой фильтр ищет базы, без разброса по цене. Это как бы четкие консолидации без фитилей. 

Base_Chanell.Скрипт ищет базы из N последних свечей в рамках канала из X центов, на любых уровнях. 
Cнять галочку Include Extended Session 

def iDiff = 0.01; максимальное отклонение в центах 
def iChanell = 0.05; максимальная ширина канала для базы 
def iBars = 4; число баров для просмотра 
def iLowest = lowest(low,iBars); 
def iHighest = highest(high,iBars); 
def bBaseLow = fold Lbar = 0 to iBars with Ls=1 do if ((low[Lbar]-iLowest)<=iDiff) then Ls*1 else Ls*0; 
def bBaseHigh = fold Hbar = 0 to iBars with Hs=1 do if ((iHighest-high[Hbar])<=iDiff) then Hs*1 else Hs*0; 
def bChanell = iHighest — iLowest <= iChanell; 
plot bBase = if bBaseLow and bChanell then 1 else if bBaseHigh and bChanell then 2 else 100; 
AssignBackgroundColor (if (bBase == 1) then Color.LIGHT_GREEN else if (bBase == 2) then Color.LIGHT_RED else Color.black); 
bBase.AssignValueColor (if bBase <> 100 then Color.black else Color.CURRENT); 

Полная библиотека индикаторов в нашем блоге goo.gl/9JRWUi

Два года в Finderby от United Traders. Что имеем?

Часть 1. Теория

А имеем вот что:)

Два года в Finderby от United Traders. Что имеем?



И это не считая 3-5 челленджей, которые я, вначале пути, не сохранял и не анализировал, два полученных счета — один слит, другой недавно получен (под это дело и решил начепятать эту статью). Считайте и думайте сами во что вам может вылиться занятие трейдингом на начальном этапе. Все челленджи стандартные NYSE по 60$. Берем по максимуму: 23*60=1380 или около 83000 рублей (при средней цене бакса равной 60). Впринципе это 1 маленькое депо для начала торговли на Московской бирже, либо минимальное депо для пробы себя на Америке при торговле через СНГшные пропы. А сколько я читаю тем и статей про один, два и более слитых депозитов. Из этого делаю вывод, что я отделался малой кровью. Хотя дистанция все расставит на свои места:)
Анализируя свои неудачи я понял, что основной причиной сливов было отсутствие системы и нарушение рисков. Особенно это было видно в самом начале, когда я бегал от одной системы к другой, перепробовав кучу индикаторов, паттернов и уже готовых систем. В результате всего этого симбиоза получилась моя система.

( Читать дальше )

....все тэги
UPDONW
Новый дизайн