Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ------- Wednesday, January 17, 2018 -------
- 04:45 Nube: .
- 06:08 bladeaccount: Sorry if it's a newb question but is there a hotkey for creating alerts very quick to wherever you just click in the active trader window or the charts? like holding Alt whle clicking somewhere in the chart or active window
- 06:13 Nube: You mean set an alert at a certain price level?
- 06:16 bladeaccount: or a script to set like 5 alerts at the same time up like 5 points/ticks above all at the same time with one click? Like I want alerts at 5, 10, 15, 20, 25 etc..
- 06:22 Genoja: Any one familiar with the Zanger volume ratio whom has a sweet tos setup they’d be willing to share
- 06:25 harndog: Zanger: http://tos.mx/3FqTlM
- 06:26 harndog: blade - Do a platform tour with live support - my experience is TOS is weak in Alerts
- 06:27 Nube: You could script something then apply it as a study, but the alerts will be sounding almost all the time as price bounces back and forth across every 5th tick.
- 06:27 harndog: Idea - Create a script with horizontal line and alerts from crossabove, cross below
- 06:28 Genoja: Harn your the man I’ll take o look thanks
- 06:28 harndog: Contribute back into the room
- 06:28 Nube: Alert once, Nube. Duh.
- 06:30 Jake-Elwood: Just right click on the chart or on the active trader window and select Create Alert at the price level that you are at.
- 06:31 Hey-U: Aloha bladeaccount: Just RIGHT CLICK with your mouse and CREATE ALERT takes you to ALERT set-up! Lucky
- 06:31 Jake-Elwood: any script you'd write would mean that you would have to manually enter the price level
- 06:38 Nube: Jake, can set multiple at once when you use that?
- 06:46 RayK: Hi. My buffer is missing from 19:44 to 20:19 EDT yesterday (Jan 16). Can someone please PB it to me? Thanks in advance.
- 06:55 Jake-Elwood: NUBE, sure just set multiple alert statements with various offsets from the input price. works, right?
- 07:03 Nube: Sure does. Just always hoping for short cuts.
- 07:10 pdub1: mornin y'all, shizznet wrote this scan for me to be alerted when the high of the 1st candle was broken, i'm only scanning a tight group of about 40 stocks, and even tho several have broken the high of the 1st candle the scan returns nothing, take a look at wynn @8:38, that should of clearly popped into the scan - def start = 0930;
- def h = high;
- def c = close;
- def first_high = if secondsFromTime(start) == 0
- then high
- else first_high[1];
- plot scan = c crosses above first_high;
- 07:12 Joebone87: morning scripters... question for my option traders...cani use custom colums in the monitor tab... would like to see bid and ask or my some ratio of width of bid/ask : price
- 07:13 Joebone87: maybe some*
- 07:13 Nube: Use addlabel to debug. Check the value of first_high
- 07:15 pdub1: i do not know how to use addlabel to debug, could you show me and then i will know, or an example?
- 07:17 Nube: Addlabel(1, " First High:" + first_high, color.gray) ;
- 07:19 Nube: The other way, which super handy, is to just plot your variables instead.
- 07:21 pdub1: that addlabel came back with the correct first high on wynn
- 07:21 Mobius: pdub..What aggregation do you have the scan set for?
- 07:21 Nube: Excellent. Now check the plot. What is it plotting at that time?
- 07:22 Nube: Well now is the that a good question
- 07:22 Nube: *isn't
- 07:24 pdub1: umm, change scan to line in the plot line, would that do it?
- 07:26 pdub1: tried it, no line
- 07:27 Mobius: There's nothing wrong with the scan code posted above. So we know it's a PEBKAC error. Likely you've got the wrong aggregation checked so the bar isn't complete in the scanner
- 07:28 pdub1: ive got it on 1 min agg
- 07:28 Mobius: in the chart or the scnner
- 07:29 pdub1: scan is on 1 min, and chart is a 1 min chart
- 07:31 Mobius: keep looking you'll find it. The code isn't the problem
- 07:34 pdub1: can i get a hint? i mean keep looking for what?
- 07:34 Nube: Scan.setpaintingstrategy(paintingstrategy.boolean_arrow_up);
- 07:35 UpTheCreek: the way that code is written, it's looking for an event, not a change of state. depending on how you are using the scanner (static or dynamic) that code may not see an event. dynamic scans run only every 3 mins so if you are using a 1 min agg, the event is long gone by the time the scan happens
- 07:37 UpTheCreek: put the code on a chart and verify that it works there, then figure out how to make it work in the scanner
- 07:50 Shizznet: I didn't write that scan, btw.
- 07:51 codydog: anyone else having an issue with watchlists dropping saved symbols or reverting back to deleted symbols?
- 07:51 pdub1: oh u didn't, my apologies @shizznet
- 07:51 Rinder: Hi everyone. I'm trying to use a larger aggregation period in a study but it has gaps (usually over holidays). I've tried using IsNaN and other checks to have it pull in the previous value but it isn't working. Anyone have any advice?
- 07:52 Shizznet: Dirty feed. You get what you pay for. Sorry for not being helpful.
- 07:52 pdub1: maybe DMonkey did
- 07:52 Shizznet: Mobius, DM and Nube wrote you 3 diff types.
- 07:53 Shizznet: Bet you didn't save any of them.
- 07:53 pdub1: wow, i saved them all
- 07:54 Shizznet: Nooiice
- 07:54 Shizznet: Good stuff
- 07:54 pdub1: altho i don't remember the one from nube
- 07:54 Mobius: there's nothing wrong with the code
- cross is an event - a moment in time. Whereas greater than or less than is a state. Change the code to < or > and it will pick up all stocks that have already closed above the first high
- 07:54 pdub1: i did save the one you posted on the strat using targets and stops also
- 07:55 Mobius: or below it.
- 07:55 Shizznet: Class in session, pdub1.
- 07:55 Mobius: pdub. Coding is all about precision. You get EXACTLY what you ask for from the scanner
- 07:56 Mobius: WYNN is in the list when you scan for all stocks where current price is greater than the opening high
- 07:56 UpTheCreek: rinder, I reported the bad data problem weeks ago after a platform update, they ack'ed it but have not fixed it. Make sure you are using isNaN in the correct way.
- 07:57 Shizznet: AND he gave you a signal.
- 07:57 pdub1: making current adjustments
- 08:00 pdub1: working now, ty very much @mobius, in my limited writing of script i have not gone over 'crosses' so i would have never caught that, ty for letting me know, i just would not have found that
- 08:00 Shizznet: Sorry for the repost but for lurkers/students following along, this is what was posted yesterday:
- Mobius: First RTH Bar Range plotted
- # Regular Trading Hours First Bar Range
- # Mobius
- # V01.11.03.2017
- declare hide_on_daily;
- def RTH = if getTime() = RegularTradingStart(getYYYYMMDD()) and
- secondsTillTime(1000) 0
- then 1
- else 0;
- def "RTH First Bar" = if SecondsTillTime(0930) == 0 and
- SecondsFromTime(0930) == 0
- then barNumber()
- else "RTH First Bar"[1];
- def "RTH First Bar High" = if barNumber() == HighestAll("RTH First Bar")
- then high
- else Double.NaN;
- def "RTH First Bar Low" = if barNumber() == HighestAll("RTH First Bar")
- then low
- else Double.NaN;
- plot "First Bar High" = if RTH and
- barNumber() = HighestAll("RTH First Bar")
- then HighestAll("RTH First Bar High")
- else Double.NaN;
- "First Bar High".SetDefaultColor(Color.GREEN);
- "First Bar High".HideBubble();
- "First Bar High".HideTitle();
- plot "First Bar Low" = if RTH and
- barNumber() = HighestAll("RTH First Bar")
- then HighestAll("RTH First Bar Low")
- else Double.NaN;
- "First Bar Low".SetDefaultColor(Color.RED);
- "First Bar Low".HideBubble();
- "First Bar Low".HideTitle();
- AddCloud("First Bar Low", "First Bar High", Color.DARK_GRAY, Color.DARK_GRAY);
- # End Code First Bar Range
- DMonkey: pdub...
- def start = 0930;
- def h = high;
- def c = close;
- def first_high = if secondsFromTime(start) == 0
- then high
- else first_high[1];
- plot scan = c crosses above first_high;
- Nube: Plot firsthigh = if getsecondsfromtime(0930) 0 and getsecondstilltime(0931) = 0 then high else firsthigh[1];
- 08:02 pdub1: it was from DMonkey then...
- 08:03 pdub1: and i learned that the scans can be dynamic or static
- 08:03 UpTheCreek: you are dropping operators with that paste, shiz
- 08:04 Mobius: pdub.. Time for you to read the manual and go through the tutorials. You would benefit from doing so and so would we.
- 08:04 UpTheCreek: I see very little value in setting the scanner for 1m aggs unless you are doing manual scans
- 08:05 AlphaInvestor: ^^ good point - no reason to set it less that 3 minutes
- 08:05 Nube: How is it thay software can't figure out how to not drop operators ib the copy and paste procedure
- 08:06 Nube: How is it that I never learned to spell?
- 08:06 james4371: Would someone be able to help me out with this watchlist code please? I'm trying to have an alert triggered when the 8 ema crosses the 34 ema on a symbol in my watchlist. The visual portion is functioning properly but the alerts are not.
- 08:06 james4371: def ema8 = MovAvgExponential( Length = 8 );
- def ema34 = MovAvgExponential( Length = 34 );
- def data = if ema8 > ema34 then 1 else if ema8 < ema34 then -1 else 0;
- assignbackgroundcolor(if data == 1 then color.GREEN else if data == -1 then color.RED else color.YELLOW );
- plot output = data;
- output.assignvaluecolor( color.black );
- AddLabel( yes, if ema8 > ema34 then "^" else if ema8 < ema34 then "v" else "=", color.black );
- alert( Crosses( ema8, ema34, CrossingDirection.ANY ), Concat(GetSymbolPart(), " 8/34 EMA cross!"), Alert.BAR, Sound.Chimes );
- 08:06 UpTheCreek: different representtions of the same character. we should all go back to longhand
- 08:07 Mobius: james Watchlists will not signal alerts
- 08:07 james4371: That would explain it LOL.
- 08:08 Mobius: You can make it a Dynamic Watchlist and then turn alerts on
- 08:08 james4371: How would I do that?
- 08:08 Shizznet: oh wow
- 08:10 Mobius: Scan your static watchlist for the same condition you want the alert for. Save the scan and then set alert on for that scan and pull that scan up into a watchlist
- 08:10 pdub1: ok, i was just looking up words in reference as needed, but i will go through the manual and tutorials asap, I will report back to duty when finished - thanks again and see you soon
- 08:10 james4371: I'll have to try that, pretty new to TOS here, thanks.
- 08:11 Mobius: The Watchlist will populate with the stocks as the condition becomes true and an alert with email and sms will be sent if you have those features turned on in your setting
- 08:11 avital2473: Alpha, how close are you to Rolling IV script release,if you want to ?
- 08:12 AlphaInvestor: Avit - haven't started writing it, so it is far from ready
- 08:12 Mobius: Battle of the Bands already has IV bands for intraday
- 08:12 AlphaInvestor: Avit - it will be released when complete - Sharing is Caring
- 08:13 AlphaInvestor: Mobius - these would be more like expected move bands ... does BoB have that?
- 08:13 Mobius: Which as a matter f fact are about the same as Keltner Channel and abolutly no better
- 08:13 Mobius: Must need more coffee
- 08:14 AlphaInvestor: I got a pot of Sumatra ready, should I pour you a cup?
- 08:14 Shizznet: < Same
- 08:14 Mobius: Expected move is already on MyTrade as bands too
- 08:14 Shizznet: yw
- 08:14 avital2473: Thanks for update, I am doing somethinf similar ,but manualy adjust IV for 5-7 days chain,works not bad.
- 08:15 AlphaInvestor: Mobius - hmm - I know you have it as lines extending from Last Friday, but I didn't know you had bands that float over time too
- 08:15 avital2473: It is not a bands ,just lins brackets
- 08:16 RayK: Hi. My buffer is missing from 19:44 to 20:19 EDT yesterday (Jan 16). Can someone please PB it to me? Thanks in advance.
- 08:18 Mobius: Alpha.. Mabe what your planning is different. I love new ideas. Let me know when you've finished
- 08:18 twoshoes: Ray -- Jake's link from yesterday has the period you're looking for (in CST)
- 19:47 Jake-Elwood: /UF83NL9Q Didn't miss much.
- 08:18 Shizznet: RayK, all I got /RAw2AkDb
- 08:20 AlphaInvestor: Mobius - I will re-look at what you have on Battle of the Bands, and IV Bands before I spend too much time re-boiling the ocean
- 08:20 Mobius: There's a whole lot of people buying yesterdays dip. They must believe it was a good opportunity.
- 08:21 AlphaInvestor: I dipped my toes in yesterday - added some RISK DEFINED deltas
- 08:21 Shizznet: $ pouring out of BTC back into good earnings perhaps
- 08:21 RayK: Jake, Shizznet - thanks!
- 08:21 Shizznet: Bought DIA 275 C 31dte @ .05 yesterday
- 08:21 Shizznet: .09 now
- 08:22 hooter: Just curious... How/why are time segments of this forum sometimes missing?
- When this occurs with me, I usually exit forum and come back in and that missing segment is re-populated. What am I missing?
- 08:22 AlphaInvestor: up 80% sell sell sell
- 08:22 Shizznet: ^ Bingo.
- 08:22 Jake-Elwood: A fold in the space-time continum
- 08:23 Shizznet: hooter, everyone’s PC works differently. I sometimes come back to 3 days of buffer and other times I only have the last 2hrs.
- 08:23 Jake-Elwood: why would anyone ever leave this place?
- 08:23 Shizznet: Ha
- 08:28 Mobius: 4% rise between the last untested Pivot and yesterdays high. That's a good year by most standards.
- 08:30 Shizznet: I told ya yesterday was a higher low
- 08:30 Shizznet: lol
- 08:30 AlphaInvestor: Mobius - if the market was flat for the rest of the year I would not be terribly disappointed - I am up prrety good so far
- 08:31 DMonkey: Alpha....be a bit more optimistic.....lots of room to the downside....:)
- 08:34 AlphaInvestor: DMonkey - I am 85% long stock ... don't you be talkin' like dat
- 08:39 FrankB3: We all long in our hearts
- 08:42 Nube: Sane market behavior today: F took a pretty good hit on an earnings warning so the market still has some sanity.
- 08:42 Nube: Just think, this last move might be sane.
- 08:43 AlphaInvestor: fake news - all sanity has left the market
- 08:43 Mobius: I like uptrends and the market has been in one since it's inception. When the market goes parabolic at some point you have to take profit or mis the added profit those bubbles afford. That profit is what separates the truly successful from the average.
- 08:45 AlphaInvestor: Mobius - agreed ... the only question is when to do it without being too much of a market timer
- 08:45 FrankB3: Here is a chart of the SPX in the last 1000 years ::: .
- 08:48 Mobius: That's the rub isn't it Alpha.. My rule of thumb is 4 standard deviations. It's a very simple rule. Market goes that parabolic you know it will correct past what's reasonable so there will be a buying opportunity. But, you have to have a lot of patience to trade that way.
- 08:49 Shizznet: All FB trading groups are silent because most of them were louder than a chicken’s hen when crypto was trending.
- 08:50 Shizznet: /YM gonna show them what’s a real bull market
- 08:50 Mobius: Seems like BitCoin is losing a little of it's synthetic shine
- 08:52 Shizznet: A lot of broken hearts.
- 08:53 Nube: For comparison, a broad Europe Etf like VGK is only like 1 deviation above mean
- 08:54 hum: 50% alpha?
- 09:03 FrankB3: Mr. Scrits in trader_TV
- 09:06 FrankB3: Talking about Price Headly indicator,,,, but don,t give him credit
- 09:06 avital2473: Battle of Bands daily brackets are exellent,thank you Mobius.
- 09:17 rogerdt: does tos have a price to volume counter script?
- 09:24 DMonkey: roger look at volume profile....
- 09:28 anthony8186: Is the script for the Cam Indicator from the January issue of Technical Analysis of Stocks & Commodities available in this program
- 09:28 rogerdt: thank you
- 09:28 Nube: Yes, in fact I've seen more than one CAM floating around.
- 09:29 anthony8186: Thx
- 09:37 enerfax: is there a way to get a chart on spy using only bats prices?
- 10:05 Nube: Price is going to figure out how to go concave and all our charts are going to have to go backward in time as price increases.
- 10:06 Nube: Before this bull market is over, Mobius might have wished he sold that AAPL a year or two ago.
- 10:14 Nube: Or it's bumping it's head right here.
- 10:15 Shizznet: Double top
- 10:15 Shizznet: or ignore me. Pick your poison.
- 10:17 beergas: S&P5 vs Earnings Revisions Ratio is sky high back to '85
- 10:19 beergas: AAPL 20k new US jobs & campus
- 10:26 FrankB3: I like old Price H. ::: he is the only one I know who says to look at a options chart. This diagonal is priced at a -.17 will try to get a credit of +.35,, GTC http://tos.mx/YbGvjC
- 10:29 AlphaInvestor: Without also showing the price of the underlying and the IV of the underlying an Options price chart is worthless ... just my 2 cents
- 10:31 FrankB3: worth more than .02
- 10:32 AlphaInvestor: that was 2 cents CDN$ too, which makes it worth even less
- 10:32 FrankB3: ha
- 10:34 MrLayden: who in here knows if the premarket scanner picks up after hour movement in volume, just spoke with someone at tarde desk and they told me, premarket scanners dont pick up volume or percent change, is that true?
- 10:35 MrLayden: trade*
- 10:40 Nube: No, tarde desk is proper use. Kidding, Desk. Kidding.
- 10:44 Nube: Regarding the scanner, premarket the issue seems to me to be data related much more than the scanner itself.
- 10:46 MrLayden: he said i can change it with codes in thinkscript, sence the scan the criteria i have in my scan is not reading accurately, is what i understood from the conversation
- 10:51 AlphaInvestor: Bull Market - news of your early demise has been greatly exaggerated
- 10:55 Nube: Yeah, some of the built in scans aren't so hot premarket. The premarket movers are whatever it's called seems to be great though. As for scripting your own, yep, that absolutely can be done.
- 11:00 FrankB3: AI:: when the bitcoin falls will you hear a sound ?????
- 11:01 AlphaInvestor: Not in my portfolio you won't
- 11:02 FrankB3: Perhaps /GC will give us a clue
- 11:04 FrankB3: You may hear two crashes,,, at the same time,,, bitcoin and the SPX ?????
- 11:09 mattys: how can i make this study be 20 days, not just 20 periods?
- 11:09 mattys: def data = (Volume / VolumeAvg(20).VolAvg)-1;
- addlabel(yes, aspercent(Round(data,2)),if data < 0 then color.downtick else color.uptick);
- 11:12 FrankB3: You now buy Denver basketball seats with your bitcoin:: the only problem is that the 4 seats you purchased will be down to two,,, by the time they process the deal
- 11:12 AlphaInvestor: Frank - take this bitcoin chatter to the Worthless Electrons Chatroom
- 11:13 FrankB3: ha
- 11:18 Shizznet: lol
- 11:44 online: quick pop in -
- 11:45 online: does anyone have code for difference between yesterday's close and current ask for a watchlist column?
- 11:47 AlphaInvestor: plot diff = close[1]-Ask;
- 11:48 online: Alpha thank you
- 11:49 PonceDeLePwn: Hey all. Anyone have an idea on how to display two securities (specifically, the "last" ticks for spot and non-spot forex) on the same chart?
- 11:52 online: Alpha - do I need all the other lines?
- input Market_Open_Time = 0930;
- input Market_Close_Time = 1600;
- input showOnlyToday = YES;
- def price = close[1];
- def Change = (close - ASK);
- plot diff = close[1]-Ask;
- 11:53 AlphaInvestor: Online - if you use a daily column, I believe that single line I gave you will do what you ask
- 11:53 online: thank you -- that is what I thought but wasn't sure
- 11:54 AlphaInvestor: all that time based stuff would be needed if you needed things from an intraday column
- 11:56 online: fok
- 11:56 online: ok
- 11:58 online: thanks - this is the result - anyway to get the column to show 2 decimal places, i.e., when .10 is shows .1
- 12:01 AlphaInvestor: using addlabel with AsDollars as the fromatting
- 12:02 AlphaInvestor: but then it will sort alphabetically, not numerically
- 12:04 online: OK
- 12:40 rsf: HEY ALL.. Anyone have a warchlist script to search for symbolds with earning in the next 2 weeks? Thanks
- 12:42 reliantbay: any one here good at thinkscript?
- 12:42 AlphaInvestor: There are a bunch of folks who hang out here that are good at thinkScript
- 12:46 reliantbay: thanks @alphaInvestor
- 12:47 AlphaInvestor: Throw your question out, somebody will likely answer it (but not likely in the last 13 minutes of trading)
- 12:48 reliantbay: i need help plotting daily value of ttm_lrc . currently i can get the value of todays candle by just calling TTM_LRC(). but i want to plot it for the previous candles also.
- 12:52 reliantbay: so when i plot those it should be a curve not a straight line.
- 12:53 Shizznet: lol
- 12:54 Shizznet: You started asking for my LRC_Custom and then ended up asking for LRCBands
- 12:55 reliantbay: shizznet i am news here so i am not sure how your lrc_custom looks likes
- 12:55 reliantbay: new*
- 12:59 Shizznet: On mobile so I’ll be no help. BLT wrote it though
- 12:59 reliantbay: how do i find it ?
- 13:47 vix2: Doing some code for the symbol DJIA TIKI and .......... found that there is a DJIA Composite TIKI symbol too. Anyone know what the Composite TIKI represents versus regular TIKI? TY
- 13:48 UpTheCreek: probalby a composite value from all exchanges and not just NYSE
- 13:52 Mobius: TTM_LRC is nothing but an ordinary linear regression channel. for the current value you can use the TOS inertiaAll(close)
- 13:52 vix2: Makes sense. Looks like they vary in a wide range for values. Just wonder if one leads or which one represents more of the program trading aspect involving DJIA.
- 13:52 Mobius: for one bar back InertiaAll(close)[1]
- 13:55 BerretSO4: I'd like to create a study or script which shows simply the %Change from a specific point or price, then include that as a column in my watchlist. Any thoughts?
- 13:55 cachetada: Mobius,are u abe to explain the significance of the Div Signal (gree and red) for the Mobius MACD
- 14:03 Mobius: vix2 The composite is the DJIA plus about 35 more major companies
- 14:05 Mobius: cach... I don't know what your calling Mobius MACD
- 14:06 vix2: That is interesting to know. Dow 30 + ~35 more? Thank you. Will try to track down those exta listed companies.
- 14:07 Mobius: Berret - That's the same for any percentage calculated
- (price1 - price2) / price1
- 14:07 Mobius: vix2 google DJIA Composite
- 14:07 cachetada: Mobius MACD:
- 14:07 cachetada: declare lower;
- input fastEMA = 13;
- input slowEMA = 21;
- input Smooth = 8;
- def c = close;
- def h = high;
- def l = low;
- def FSignal = (c * .15) + (.85 * ExpAverage(c, fastEMA)[1]);
- def SSignal = (c * .075) + (.925 * ExpAverage(c, slowEMA)[1]);
- plot MACD = FSignal - SSignal;
- MACD.SetPaintingStrategy(PaintingStrategy.Line);
- MACD.SetLineWeight(2);
- MACD.AssignValueColor(if MACD < 0 and
- MACD < MACD[1]
- then Color.Red
- else if MACD < 0 and
- MACD > MACD[1]
- then Color.Cyan
- else if MACD > 0 and
- MACD > MACD[1]
- then Color.Green
- else Color.Lime);
- plot MACDSL = ExpAverage(MACD, Smooth);
- MACDSL.SetPaintingStrategy(PaintingStrategy.Histogram);
- MACDSL.SetLineWeight(5);
- MACDSL.AssignValueColor(if MACDSL < 0 and
- MACDSL < MACDSL[1]
- then Color.Plum
- else if MACDSL < 0 and
- MACDSL > MACDSL[1]
- then Color.Green
- else if MACDSL > 0 and
- MACDSL > MACDSL[1]
- then Color.Blue
- else Color.Light_Red);
- rec MACDh = CompoundValue(1, if MACD < 0
- then Double.NaN
- else if MACD crosses above 0
- then MACD
- else if MACD > 0 and
- MACD > MACDh[1]
- then MACD
- else MACDh[1], 0);
- rec Valueh = CompoundValue(1, if MACD < 0
- then Double.NaN
- else if MACD crosses above 0
- then h
- else if MACD > 0 and
- h >Valueh[1]
- then h
- else Valueh[1], 0);
- plot divSignal = if MACD > 0 and
- h > Valueh[1] and
- MACD < MACDh[1]
- then 0
- else Double.NaN;
- divSignal.SetPaintingStrategy(PaintingStrategy.Points);
- divSignal.SetLineWeight(4);
- divSignal.SetDefaultColor(Color.Green);
- 14:08 Mobius: That's just a standard MACD
- 14:09 Shizznet: Another post w no header
- 14:09 Shizznet: Yeah but it’s your room so we get to blame you sometimes
- 14:09 pdub1: Mobius & UTC, this morning going over the scan that we changed from static to dynamic, even if it is dynamic does it still only self scan and populate every 3 min or does it continually scan?
- 14:09 cachetada: yes-and what is the Div Signal?
- 14:10 Mobius: cach.. It's right in the code
- plot divSignal = if MACD > 0 and
- h > Valueh[1] and
- MACD MACDh[1]
- then 0
- else Double.NaN;
- divSignal.SetPaintingStrategy(PaintingStrategy.Points);
- 14:10 UpTheCreek: dynamic = scans every ~3 min
- 14:11 Mobius: If the MACD is greater than 0 and the high is greater than value high from one bar ag and the MACD is greater than the last MACD the it signals
- 14:12 Mobius: geeze I wrote that thing about a decade ago. And you expect me to know what it does. OyVey
- 14:12 BerretSO4: Mobius, thank you - I'll fiddle with this and get myself more used to this system before follow-up question...
- 14:12 pdub1: ok, thanks, and I'm noticing that even tho the stock continues to stay above that 1st candle threshhold at some point, it falls 'off' the scan, is there a minimum amount of time it will stay on the scan and then go away? about 20 min after we had set the scan up, all of the symbols disappeared....
- 14:13 UpTheCreek: all depends on how it's coded
- 14:14 Mobius: pdub... That is not clear-cut. There's nothing in the code that drops a stock from the list and it doesn't follow any rule I've been able to find or surmise. The time they take to drop off the list seems to be random
- 14:15 UpTheCreek: scans have no memory, the scan condition either exists or it doesn't
- 14:15 UpTheCreek: doesn't it?
- 14:16 pdub1: thats my point, if the symbol continues to meet the scans condition it should stay in the scan, but it doesn't
- 14:16 Mobius: There may be a subroutine inside the JAVA code that closes an open object making them drop off the list
- 14:16 Mobius: No pdub that is inaccurate
- 14:17 UpTheCreek: < not a big user of dynamic scans, even less so now
- 14:17 Mobius: if the condition is a STATE and the scan stays TRUE they stay on the list
- 14:17 UpTheCreek: back to > all depends on how it's coded
- 14:18 Mobius: Remember anytime the "CROSSING" function is used that is a single BAR event. Anytime the greater than > of less than < function is used that creates a STATE
- 14:19 Mobius: My point UPC was that even using "CROSSING" the symbol does not appear for just 3 min and the fall off the list. It may stay on the list for up to an hour
- 14:20 UpTheCreek: interesting...
- 14:21 Mobius: yeah I thought so too. You'd think it'd fall off the list after the next cycle in the scanner
- 14:22 UpTheCreek: go figure
- 14:22 pdub1: ok, so i have it in a STATE with the > function and the symbold still do not not stay on the scan and eventually fall off
- 14:23 Mobius: pdub.. Only if they eventually are not > but become <.
- 14:23 Mobius: Otherwise they stay on the list
- 14:24 Mobius: If yours fall off, your just special
- 14:25 pdub1: BA was on the scan after we fixed it this morning, and about 20 min later fell off and is still not on the scan right now, I'm under the impression that all symbols within my scan group would still be on the scan list right now. If this is unexplainable I understand, just asking for a friend again
- 14:27 Mobius: You have the explanation already. Your really now special. There is a reason.
- close > condition = On the list
- later close < condition = Off the list
- later still close > condition = On the list
- 14:31 pdub1: well i'm further confused, you tell me i'm special, meaning it is only happening to me, but then say there is a reason why it should be on the list
- 14:32 Mobius: Your special because your not paying attention. My reference to special is always those that rode the short little school bus
- 14:33 MTS1: pdub; in other words read your code again; do you have crossing, or do you have a condition that's either true or not?
- 14:34 Mobius: BA was greater than then below then above then below the opening bar high 5 time today
- 14:38 Mobius: pdub.. I've earned the right to my sarcam. And I never use it on those that
- 14:39 Mobius: are paying attention
- 14:39 Mobius: And I never use foul language
- 14:40 Mobius: As to teaching well that may be true. I leave that to your assesment
- 14:40 Mobius: assessment too
- 14:43 Shizznet: pdub one of my ongoing problems is reading replies too fast.
- 14:44 Shizznet: Things tend to go over my head too easily when I let that happen.
- 14:47 BerretSO4: OK, fundamental question about writing a study. I want to get the study to ask me for a number, so that it can calculate something based on other information. How do I get the study to ask the user for an input? Input does not seem to be working, but I may have the syntax wrong. Do you have an example of a line requesting a number from the user?
- 14:47 BerretSO4: Forgive my ignorance, I have had some minor programming experience, but not enough to hash through this yet.
- 14:49 Mobius: Berret - TOS isn't interactive in that fashion. The study can't pause for a user input. You have to write a set of variables that calculates whatever response is needed.
- 14:50 BerretSO4: So, everything must be automated - no user input function is available, like in C# or a similar language?
- 14:50 Shizznet: Whatcha got so far?
- 14:50 BerretSO4: This means I'd need to create a new study for each possible variable I'd 'input'
- 14:51 BerretSO4: Here's the gist, conceptually:
- 14:51 Mobius: Yes that's correct. You can enter a user input as a starting point or have a label pop when another input is needed by an out of bounds marker but you then have to open the UI window to write in a new value
- 14:52 BerretSO4: 1: Input "price1" from user
- 2: Get "price2" from variable LastPrice
- 3: Display (100(price1 - price2) / price1)%
- 14:52 pdub1: MT - yes I have it in the > condition
- 14:52 Mobius: How will you determine "price1"
- 14:53 Shizznet: You’re one of those
- 14:54 BerretSO4: I would make it up. It would be a hypothetical price based on a hypothetical purchase. I suppose I could call a variable for each stock and refer to a close price on a specific day, but that would make the process more complicated when all I'd need is the prompt "what price" or something like that.
- 14:54 BerretSO4: Shizznet, sorry I'm not a programmer. If this is annoying please feel free to ignore me.
- 14:55 Mobius: Berret.. Sure you can open the UI and enter a price each time you change to a new Chart
- 14:55 Shizznet: No I mean you’re so close if this is your first time. You’re one of the types that get it after reading through the manual once. imo
- 14:56 BerretSO4: Oh - thank you Shizznet.'
- 14:56 MTS1: Pat; Read the whole script and re-read the comments above; it's been explained. The version I saw after your discussion uses crosses above; if you changed somethign to > and that condition is still true (as are any other conditions) it would show in the results.
- 14:56 BerretSO4: this is my first time, yes. Mobius, maybe I should read more of the manual before asking further.
- 14:58 MTS1: *after your discussion w Mobius and it was fixed - RE: uses crosses above
- 14:58 MTS1: bbl
- 14:59 Mobius: Berret.. Here is an example of what you can do
- (Copy and paste the code below to a New Custom Study)
- input UserValue = 100; #hint UserValue: Your value
- def price = close[1]; # any variable you want
- def Percent = (price - UserValue) / price;
- 14:59 BerretSO4: oh #'ing is comments in this. OK.
- 15:00 Mobius: yes
- 15:00 AlphaInvestor: If uservalue is the base of comariosn ... that last line should be reversed
- 15:00 Mobius: I've got no idea Alpha
- 15:00 AlphaInvestor: dang fingers ... gunna have to send them in for for a tune-up
- 15:01 Mobius: is UserValue a prior value or a future value?
- 15:02 AlphaInvestor: good point Mobius - I read it one way, you read it another
- 15:02 Mobius: Is it the comparator or the comparison. Is it the left or the right
- 15:02 AlphaInvestor: serves me right for questioning Professor Yoda
- 15:02 Mobius: lol please
- 15:04 AlphaInvestor: Mobius - parabolic moves seem to beget continued parabolic moves
- 15:04 AlphaInvestor: But I did sell one mutual fund today, building up some extra Dry Powder
- 15:05 BerretSO4: prior value
- 15:05 BerretSO4: So, this defines the Percent Value
- 15:06 BerretSO4: now, I'm struggling to display it on the chart.
- 15:06 BerretSO4: As a simple output number, not as a line
- 15:06 AlphaInvestor: Look up AddLabel() in the manual
- 15:06 BerretSO4: I suppose it could be displayed as an arrow indicator with a text label
- 15:07 BerretSO4: OK, I saw that and it didn't work. I'll read more o nit.
- 15:07 AlphaInvestor: make sure you get all the parameters in there, and in the correct order - that is a common problem for some reason
- 15:07 UpTheCreek: be a whole lot easier on everybody if you could describe what youre trying to do
- 15:08 BerretSO4: UPTheCreek - sure, I can recopy it.
- 15:08 BerretSO4: I'd like to create a study or script which shows simply the %Change from a specific point or price, then include that as a column in my watchlist. Any thoughts?
- 15:08 BerretSO4: stated differently,
- 15:08 BerretSO4: 1: Input "price1" from user
- 2: Get "price2" from variable LastPrice
- 3: Display (100(price1 - price2) / price1)%
- 15:08 BerretSO4: those were my original notes on it - sorry for flooding.
- 15:09 Mobius: WatchList - Your going to need to consider a way to automate the input.
- 15:09 UpTheCreek: thought 1 - in a watchlist this is gonna be hard as you don't get to enter a value for a cell but a whole column
- 15:10 UpTheCreek: i.e. it's not a spreadsheet
- 15:10 BerretSO4: Right, that's a struggle. The study would need to be dynamic and customizable for each symbol, so that one column could display the study.
- 15:10 Mobius: Not gonna work Berret..
- 15:11 Shizznet: All good. We're learning
- 15:11 BerretSO4: Without the watchlist portion, displaying this on the chart is still useful as multiple studies, with one written for each symbol.
- 15:11 BerretSO4: though cumbersome, obviously.
- 15:11 Mobius: Yeah Berret.. That will be your only workable solution
- 15:11 UpTheCreek: you trying to get to P&L?
- 15:12 BerretSO4: essentially yes
- 15:12 BerretSO4: but without a TOS trade, and without having to use the PaperMoney platform
- 15:12 AlphaInvestor: your P&L without a TOS trade - that's easy - Zero
- 15:13 Mobius: You can use a Strategy. That shows a running hypothetical P&L
- 15:13 BerretSO4: Mobius, can you explain that in a little more detail?
- 15:13 BerretSO4: also Alpha, lol - point taken.
- 15:15 Mobius: Strategies are a TOS chart type. You can write automated buy and sell signals that TOS will track and give you a detail of time / price / entry and exit for a PL report
- 15:17 Nube: This sure would be a good place for someone with more guts than I to take a shot at selling
- 15:19 Mobius: Selling is easy. Shorting Not So Much
- 15:20 Nube: Accuracy is important. Short is what I meant. No wonder my scripts never produce what I think they should.
- 15:21 UpTheCreek: isn't it like the same as buying if you're standing on your head
- 15:21 BerretSO4: At this moment I can't even figure out how to tell TOS what to display on the label, after reading the definition of AddLabel. I'm going to have to pick this up another day.
- 15:22 Mobius: Berret.. You'll get it. Like any language - when you start dreaming in it you've got it
- 15:22 Nube: berret, quick sample
- 15:22 Jake-Elwood: thinkScript tutorials live here if you've missed them before : http://tlc.thinkorswim.com/center/howToTos/tutorials.html
- 15:22 Nube: Jakes, wins
- 15:27 Shizznet: AddLabel(
- if Close crosses Close[1] then 1 else 0, #Visible
- "What = " + Close, #Text
- Color.DARK_GRAY #Color
- );
- 15:27 Mobius: Everytime I see Jake-Elwood I get a craving for the old Saturday Night Live Shows. They're not the same anymore. At least not to me.
- 15:28 Jake-Elwood: indeed
- 15:28 AlphaInvestor: Bill Murray was on the last show, playing Bannon - he is one of the greats
- 15:28 Orange123: Hi, the function HighestAll will Returns the highest value of�data�for all bars in the chart. That includes the bars in the future. How do I get the highest bar in the past? I dont want to use the function Highest because I have to specify the look-back range.
- 15:28 Jake-Elwood: hard to recapture that magic
- 15:29 Mobius: Orange - Future bars haven't happened so it's always gonna be past highs
- 15:29 AlphaInvestor: Orange - just use Highestall if you are using price data. There is no High, Low, Open, or Close data in the future
- 15:29 BerretSO4: Thanks folks. I'll keep looking at this and you might see me again soon! Ha
- 15:30 AlphaInvestor: Orange - if it is something YOU calculated there may be future data
- 15:32 beergas: re shorting: 18:21 UpTheCreek: isn't it like the same as buying if you're standing on your head Yes, but if it's a large divy payer, then the coins fall outa your pockets rather than in.
- 15:33 Orange123: I am creating a study that will draw the retracement from the Highest High in the past.
- 15:33 Orange123: def hhh=highestall(high);
- plot BIAS_Retracement_Low2 = 100 * (low - HHH) / HHH;
- 15:33 Orange123: If I use HighestAll, it uses the highest bar in the chart
- 15:34 Jake-Elwood: yes, so what is your question?
- 15:34 Orange123: for example, for the data in 2011, it will consider today as the hightest high but that's not right
- 15:34 Orange123: for the drawing in 2011, it should only get the highest high up to 2011
- 15:35 Orange123: for bars in 2011, it should not consider 2018
- 15:35 Jake-Elwood: if today appears on the chart, it's eligible
- 15:36 Orange123: I am just drawing the "retracement" from the hightest up to the day of the bar
- 15:36 Jake-Elwood: if you want to limit it to 2011, you'd best put that limit in your study
- 15:36 Mobius: if you want to bracket a given period of time the you need to specify that
- 15:36 Mobius: Nice Jake
- 15:38 Mobius: Orange - Here is one method to do that
- # High Low Close for Select Years Back
- # Mobius
- # V01.04.2011
- # Note: Chart data must be one year greater than the YearsBack period
- Input YearsBack = 1;
- def bar = barNumber();
- def ThisYear = GetYear() == GetLastYear();
- def y1fstBar = if GetYear() == GetLastYear() -(YearsBack + 1)
- then bar
- else y1fstBar[1];
- def y1LstBar = if getYear() == GetLastYear() -YearsBack
- then bar
- else y1LstBar[1];
- def y1H = if bar == y1fstBar
- then high
- else if bar >= y1fstBar and bar <= y1LstBar and high > y1H[1]
- then high
- else y1H[1];
- def y1Hbar = if high == y1H
- then bar
- else y1Hbar[1];
- def y1L = if bar == y1fstBar
- then low
- else if bar >= y1fstBar and bar <= y1LstBar and low < y1L[1]
- then low
- else y1L[1];
- def y1Lbar = if low == y1L
- then bar
- else y1Lbar[1];
- def y1c = if GetYear() == GetLastYear() -1
- then close[1]
- else y1c[1];
- plot yearHigh = if bar >= HighestAll(y1Hbar) then y1H else double.nan;
- yearHigh.SetStyle(Curve.Long_Dash);
- yearHigh.SetLineWeight(3);
- yearHigh.AssignValueColor(if close > yearHigh
- then color.red
- else color.green);
- plot yearLow = if bar >= HighestAll(y1Lbar) then y1L else double.nan;
- yearLow.SetStyle(Curve.Long_Dash);
- yearLow.SetLineWeight(3);
- yearLow.AssignValueColor(if close > yearLow
- then color.red
- else color.green);
- plot yearClose = if ThisYear then y1c else double.nan;
- yearClose.SetStyle(Curve.Long_Dash);
- yearClose.SetLineWeight(3);
- yearClose.AssignValueColor(if close > yearClose
- then color.red
- else color.green);
- # End Code - Past Years High Low Close
- 15:39 Orange123: Thank you. Let me try it.
- 15:39 Mobius: Here is another method
- # Last Year
- # Mobius
- # Chat Room Request 03.05.2016
- def Year_First = if GetYear() != GetYear()[1]
- then open
- else Year_First[1];
- plot YearOpen = if Year_First !=0 then Year_First else double.nan;
- YearOpen.SetStyle(Curve.Long_Dash);
- YearOpen.SetDefaultColor(Color.Cyan);
- addChartBubble(isNaN(close[3]) and !isNaN(close[4]), YearOpen, "2015", Color.Cyan, yes);
- plot CloseYearPrev = highestAll(if isNaN(close[-1])
- then close(period = AggregationPeriod.Day)[252]
- else Double.NaN);
- CloseYearPrev.SetStyle(Curve.Long_Dash);
- CloseYearPrev.SetDefaultColor(Color.Yellow);
- addChartBubble(isNaN(close[3]) and !isNaN(close[4]), CloseYearPrev, "Last Year", Color.Yellow, yes);
- 15:40 AlphaInvestor: If you use the new Time Selector, and have the Expansion Area set to Zero ... I don't think it will see future bars ... but that would have to be tested
- 15:40 Mobius: Yeah GetTime() will use future bars
- 15:41 AlphaInvestor: I meant for Highestall(close) or some such
- 15:41 Mobius: HighestAll(barNumber()) will get the bar furthest to the right in the expansion area. I use it all the time
- 15:42 Mobius: For projections into the future
- 15:42 Mobius: Which as you know are always perfect. Yeah!
- 15:42 AlphaInvestor: That is why I said "and have the Expansion Area set to Zero"
- 15:46 beergas: Those many ZigZag studies were prone to issues @ future bars
- 15:47 AlphaInvestor: ZigZag - never heard of it
- 15:48 beergas: lol
- 15:55 Nube: ToS mobile appears to have something like setstyle(curve.dotted) that is different than the curve.points on desktop
- 15:56 Nube: It's closer to paintingstrategy_dashes, but it has that also
- 15:56 Nube: Anybody know if the Dotted and the Dashes?
- 15:56 Nube: *are the same thing?
- 15:58 Nube: Answered my own question, they aren't. Now we gotta figure out what they call that Dotted line so we can use it on desktop
- 16:01 beergas: fwiw Bull within Bull - in Q4 only Coke & Intel did not rise in Dow 30, Dow utils also down on higher interest rates. curvedot ?
- 16:02 beergas: or merely cdot if understood c is curved
- 16:05 Shizznet: PaintingStrategy()
- then
- SetStyle()
- 16:06 Shizznet: For dashes/dotted, etc.
- 16:09 Nube: Shizz, I don't see SetStyle(Curve.Dotted)
- 16:10 Nube: I see it in the style menu on mobile
- 16:10 avshar: does anybody know what CUSTOM1 and other CUSTOMxxx fields are for RTD purposes? all I get is "loading" when I pull it
- 16:11 Jake-Elwood: have u defined any custom column scripts?
- 16:11 avshar: yeah, but they're not called CUSTOMx -- is that where they're taken from?
- 16:11 avshar: I'll rename one
- 16:12 Jake-Elwood: they started out as CUSTOMx -- you may have renamed them, but that's still what ToS calls em
- 16:12 avshar: gotcha, trying it now
- 16:15 Shizznet:
- plot Data = Average(HL2);
- Data.SetPaintingStrategy(PaintingStrategy.LINE);
- Data.SetStyle(Curve.SHORT_DASH);
- 16:16 Nube: That's short_dash, not dotted
- 16:17 Shizznet:
- 16:17 Shizznet: Firm = Solid
- Points = Dotted
- 16:17 Jake-Elwood: I prefer firm curves
- 16:17 Shizznet: That's default "look"
- 16:18 AlphaInvestor: Nube - all those codes are just constants ... that is, they are just numbers likely starting at one
- 16:22 Nube: Mobile has SetStyle(Curve.Dotted)
- 16:23 Nube: and SetStyle(Curve.Short_Dash)
- 16:23 Nube: and paintingstrategy(Paintingstrategy.Dashes);
- 16:24 Shizznet: Firm on desktop is equal to Solid on mobile. Points on desktop is equal to Dotted on mobile. So forth and so on. They're just named differently, if I'm not mistaken.
- 16:25 AlphaInvestor: Sounds like an "opportunity" for TOS and TOS Mobile developers to put their heads together
- 16:26 Nube:
- 16:26 Shizznet: Right
- 16:28 AlphaInvestor: I hope bkTOS and Tculs are taking notes
- Sounds like an "opportunity" for TOS and TOS Mobile developers to put their heads together and make the line/curve naming more consistent between the two platforms
- 16:28 Nube:
- 16:29 Nube: Note mobile does not have curve.points
- 16:29 Nube: it has dotted instead.
- 16:30 Shizznet: It's the same thing
- 16:30 Nube: and it is most certainly not the same as points but with another name
- 16:30 fasxs: Hi guys, I’m trying to make a label that displays how far through the trading day we are as a %. So say at 1pm we are 50% through the day. Any ideas? Thabks
- 16:30 Shizznet: Sidenote= SetLineWeight() does not work on Curve.DOTTED on mobile app.
- 16:30 avshar: Jake -- no luck with CUSTOM1 -- I can see it working in the TRADES custom column, but not in excel. I even Exported/CopyPasted it into excel from the trades window -- everything else shows up.
- 16:32 UpTheCreek: OMG, next thing you'll be expecting is that scripts work the same way on the platform and mobile
- 16:32 Shizznet: I saw him typing and I knew he had somethin like this to say
- 16:33 Nube: No, but I DO want to find that dotted on desktop if it's there (and we just don't know about it)
- 16:33 UpTheCreek: lol
- 16:35 AlphaInvestor: Avshar - this is guaranteed to work if a) you have some indicator programmed for Custom1, and 2) you open TOS before Excel
- =RTD("Tos.RTD", , "Custom1", "MU")
- 16:36 fasxs: Hi guys, I’m trying to make a label that displays how far through the trading day we are as a %. So say at 1pm we are 50% through the day. Any ideas/would this even work? Thabks
- 16:39 AlphaInvestor: Fasxs - honestly to be good at trading you need to become good at doing math quickly in your head. There are 6.5 hours that the market is open, if you cannot do the math to figure out how far we are into the trading day In Your Head ... then you need to find another hobby before all your money is gone
- Tough Luv
- 16:40 UpTheCreek: the gettime() function is available, so if you really wanted to figure out how to parse and fractionalize it, have at it
- 16:40 Shizznet: ^
- 16:41 UpTheCreek: countdown to lunchtime is, however, very important
- 16:41 AlphaInvestor: I can do that without even doing math in my head, just listen to the grumbles
- 16:42 Nube: 2 grumbles is morning snack, 3 is lunchtime
- 16:42 Shizznet: def TotalBarsinDay = AggregationPeriod.DAY/GetAggregationPeriod();
- 16:45 AlphaInvestor: again, that works because AggregationPeriod.DAY is just a constant, and GetAggregationPeriod() pulls a constant too
- 16:47 AlphaInvestor: Later Traders - have a good night
- 16:47 UpTheCreek: then you countt bars from open and divide, viola
- 16:48 UpTheCreek: GN AI
- 16:55 fasxs: What would someone argue to be the best moving averages for intraday charts?
- 16:56 Shizznet: 1, 2, 3, 4, 5, 6, 7, 8, 9 and maybe 10.
- 16:57 fasxs: lol, seriousley though
- 16:57 Nube: The one nobody is looking at
- 16:58 Nube: Not 5,000 maybe, but you get the point
- 17:00 Nube: I give up, there's no secret setstyle.dotted
- 17:01 Shizznet: -_-
- 17:17 DMonkey: The secret is in testing and recording the results .....
- 17:19 Paris: Noticed in the chat above Mobius Last Year study. I have an earlier version of the same study that takes reference from the close on 12/31. Just reviewing my notes in case anyone was following this study.
- 17:27 UpTheCreek: so 12/31 was specifically coded instead of just the year transition?
- 17:32 Paris: Here's the snippet if you're interested
- # Takes reference from the close on 12/31. If you want the open
- # for the year then change the close[1] to open
- def Year_First = if GetYear() != GetYear()[1]
- then close[1]
- else Year_First[1];
- 17:33 fredw: what is setstyle.dotted
- 17:35 Nube: It's nothing, turns out.
- 17:36 fredw: line vs points?
- 17:38 Nube: No. Something that's available on the style menu on mobile but not on desktop. Was sspeculating on what it may be called if it were on desktop.
- 17:43 MTS1: Could someone PB today between 14:02 and 15:48 CT please? Not getting enough of the scripting commentary. .
- 17:48 admin_tculs: thinkScript Lounge chatroom will be closing soon Please finish all conversations by 8pm ct Have a nice evening
- 17:49 harndog: ty
- 17:49 Paris: MTS1, here's the timeframes you're looking for /tdYwbKfc
- 17:50 MTS1: Thanks Paris!
- 17:50 Paris: yw
- 17:51 MTS1: What time zone are you in again? For some reason was thinking EU (Paris) but guess may not be??
- 17:51 Paris: I'm in GMT+9, that was sent from a friend in another TZ
- 17:52 Paris: Have been on assiugnment to another location for the past 3 years now.
- 17:53 MTS1: Asia; OK, cool! On assignment from US, or EU, or elsewhere?
- 17:53 Paris: EU
- 17:54 MTS1: How was the adjustment?
- 17:55 Paris: Perfect!
- 17:55 MTS1: Cool; wanna go there some point. Have a good night all!
Add Comment
Please, Sign In to add comment