N.B. Пишу для себя, а не на потеху публике.
Кому кажется полезным — комментируйте по-делу.
На флуд отвечать не буду.
Что я хотел — в одном окне увидеть текущие сопротивления и поддержки (вживую).
На выходе получился вот такой активный Watchlist
Значения уровней указаны как % разницы текущей цены и уровня.
Значение выкрашено по — или + (красный, зеленый). Фон красится синим при минимальной разнице (т.е. цена вплотную подошла к уровню).
Далее коды Custom Fields (каждый plot — отдельный Custom Field) для Watchlist (Thinkorswim):
plot R3=round((close-(high[1]+2*((close[1]+high[1]+low[1])/3-low[1])))/close*100,2);
R3.AssignValueColor(if R3 <0 then Color.RED else Color.GREEN);
AssignBackgroundColor( if AbsValue(R3)<0.05 then Color.Blue else Color.BLACK);
plot R2=round((close-((close[1]+high[1]+low[1])/3+(high[1]-low[1])))/close*100,2);
R2.AssignValueColor(if R2 <0 then Color.RED else Color.GREEN);
AssignBackgroundColor( if AbsValue(R2)<0.05 then Color.Blue else Color.BLACK);
plot R1=round((close-((close[1]+high[1]+low[1])/3*2-low[1]))/close*100,2);
R1.AssignValueColor(if R1 <0 then Color.RED else Color.GREEN);
AssignBackgroundColor( if AbsValue(R1)<0.05 then Color.Blue else Color.BLACK);
plot P=round((close-(close[1]+high[1]+low[1])/3)/close*100,2);
P.AssignValueColor(if P <0 then Color.RED else Color.GREEN);
AssignBackgroundColor( if AbsValue(P)<0.05 then Color.Blue else Color.BLACK);
plot S1=round((close-((close[1]+high[1]+low[1])/3*2-high[1]))/close*100,2);
S1.AssignValueColor(if S1 <0 then Color.RED else Color.GREEN);
AssignBackgroundColor( if AbsValue(S1)<0.05 then Color.Blue else Color.BLACK);
plot S2=round((close-((close[1]+high[1]+low[1])/3-(high[1]-low[1])))/close*100,2);
S2.AssignValueColor(if S2 <0 then Color.RED else Color.GREEN);
AssignBackgroundColor( if AbsValue(S2)<0.05 then Color.Blue else Color.BLACK);
plot S3=round((close-(low[1]-2*(high[1]-(close[1]+high[1]+low[1])/3)))/close*100,2);
S3.AssignValueColor(if S3 <0 then Color.RED else Color.GREEN);
AssignBackgroundColor( if AbsValue(S3)<0.05 then Color.Blue else Color.BLACK);