| Speedometer, Workspaces, New Staff Member,ESPL, S/R, QnA |
Jan 5 , 2005
16:35 @Ensign_H: Welcome to today's training class.... we will have a period of general Q&A following a brief presentation.
Speedometer:
16:35 @Ensign_H: In last month's Trading Tips newsletter we showed a Speedometer for measuring the time it takes for a constant tick, or constant range, or constant volume bar to build.
16:35 @Ensign_H: The example showed short bars for a fast market, and tall bars for a slow market, and some have expressed interest in having the bar height inverted, ie use tall bars for a fast market and short bars for a slow market.
16:36 @Ensign_H: This can be accomplished with some additions made to the Alert Object in the 01-05-05 Beta upgrade which can be downloaded now.
16:37 @Ensign_H: Let me show the new alert object property form to accomplish the inverted bars for the speedometer example.

16:37 @Ensign_H: This chart has speedometer bars at the bottom and the taller the bar the more quickly it was built.
16:39 @Ensign_H: The shorter speedometer bars indicate bars that took longer to build, ie the market action was slower.

16:40 @Ensign_H: The new selection for the Chart Value is the 100 - Delta Time * # selection.
16:41 @Ensign_H: The # is the Number field and could be used to rescale the Delta Time value to be more or less
16:41 @Ensign_H: One of the changes is for the alert object to be able to set the scale range of a sub-window that the alert object opens. The scale is auto determined by the values to be plotted in the sub-window.
16:43 @Ensign_H: So, the alert is sufficient to create the chart example shown previously, but you will need the 01-05-05 Beta upgrade to do the example I have illustrated.
16:43 @Ensign_H: Any questions about what has been illustrated?
16:43 @Ensign_H: OK, lets move on....
New Support Staff Member
16:44 @Ensign_H: We welcome a new Ensign staff member to our team......
16:45 @Ensign_H: The staff member is KJ and will use the nickname of @Ensign_KJ
16:46 @Ensign_H: She will have marketing responsibilities and provide New Users Lessons in one of the chat rooms on a daily basis as needed. This will be an excellent resource for New Users to get a guided tour of the Ensign Windows program for initial questions on how to set up and begin using the program.
16:47 @Ensign_H: Harder questions should be directed to our staff members either by phone or in this Support chat room.
16:48 @Buffy2: welcome KJ
16:48 @Ensign_KJ: hi....thanks
16:49 cyndc: welcome KJ - what will be the room name?
16:50 @Ensign_H: The room name will be Training and is the 2nd on the room list to replace the eMini name. So the first room name will be Support and the 2nd room name will be Training
16:50 @Ensign_H: PaulO will continue to staff the support room and KJ will staff the Training room, once her training period is finished, ie in a few days. Of course, KJ has access to the resources of the rest of the staff for additional expertise
16:52 @Ensign_H: Ensign is growing and we welcome the addition of our newest staff member.
16:53 @Ensign_H: we would like to open the class now for general Q&A
S/R on a weekly basis
16:53 amg: I saw a few times the mention of S/R lines for weekly/monthly basis, but I missed the "how to"...do you recall the date the examples were posted on dacharts?
16:54 amg: (by the way, thx for speedo, will try shortly)
16:54 @Ensign_H: amg, on the S&R the issue was like this
16:55 @Ensign_H: the DPL tool can be used to put lines on a chart, and in the process the DPL tool can store in global variables the values of the lines that are drawn.
16:55 @Ensign_H: this makes it excellent as a way to put in GVs values from a weekly or monthly chart.
16:56 @Ensign_H: then the DPL can also read values from GVs and draw lines at those prices.
16:56 @Ensign_H: thus the weekly and monthly DPL lines can be redrawn on a lower time frame chart.
16:56 @Ensign_H: let me show the DPL property from.

16:58 @Ensign_H: To save a line value to a Global Variable using the DPL tool, change the spinner box in the Global column.
16:58 @Ensign_H: there is a spinner box for each of the 11 lines on the form.
16:59 @Ensign_H: To read a GV value to put a line at the price read, select Global Variable at the bottom of the drop down box in the Description column and enter the GV number in the Level column
16:59 @Ensign_H: the example shows we want to plot a horizontal line at the value in GV[10]
17:00 @Ensign_H: some other tool such as a study, alert, or DPL would have provided the price in [10]
17:01 amg: I got it...thx very much!
Workspace discussion
16:55 virt: Does saving a workspace automatically save chart objects?
17:00 @Ensign_H: virt, saving a workspace does save the chart objects in the workspace file.
17:01 virt: thanks
17:01 @Ensign_H: that basically is what the workspace file consists of. It is a script for opening and positioning chart windows, and dressing them with chart objects.
17:01 @Ensign_H: so the workspace is everything about the screen arrangement except the actual chart data files.
17:02 @Ensign_H: we store in the workspace file the chart name and time frame, and use that in opening the chart to load the data files which are separate.
7:02 @Ensign_H: but the chart objects, ie all studies and alerts and tools are part of the workspace file complete with their parameters.
17:03 @Ensign_H: if you ever want to see the workspace file content, there is a Show Script button on the workspace panel, which I will post an illustration.

17:04 @Ensign_H: in this example, the first command is Clear which closes all windows on the screen. The next sets the Price Magnet button to Down state
17:05 @Ensign_H: the next command will open a Chart and start to set its properties, such as it Position for top,left,width,height
17:06 @Ensign_H: The color= statement sets the chart background color
17:06 @Ensign_H: you can see many of the other properties being set such as is OpenInt showing, Volume showing, Bars showing
17:06 @Ensign_H: these are the boolean check box states same as found on the CTRL-P chart property form.

17:07 @Ensign_H: in this 2nd image, the slider bar has been moved down to show more of the script
17:08 @Ensign_H: The sections of [160] through [167] are setting parameters for a chart object
17:08 @Ensign_H: and finally line [170] Calculate causes the chart studies to calculate now that everything has been loaded onto the chart.
17:09 @Ensign_H: I do not expect anyone to try to work with the script directly.
17:09 @Ensign_H: it is automatically built when you open the workspace panel and click on the Save or Save As buttons to write it to a file.
17:10 @Ensign_H: and when you click the Open button, the reverse process happens of reading the file and performing the action of each of the lines in the script to open, position, color, and dress the charts and other windows.
17:10 @Ensign_H: Any questions about workspace files?
17:10 trendtrader: what does the error.... something or another doesn't match bitmap image...... mean when opening a workspace? 1st time I saw that one this week
17:11 @Ensign_H: I do not know trendtrader..... if you have such a workspace file and the error is repeatable, then send me an e-mail with the workspace file attached so I can try to get the error too. If I can see the error, then the chances greatly increase that I can find a fix or workaround to improve on the issue.
17:12 trendtrader: willl do, it's fixed now wish I knew how and why
17:12 @Ensign_H: I have not seen or had that error reported in the past.
17:12 Louise: in workspace script I do not have anything between clear (at the top) and CHARTS
17:13 @Ensign_H: that is ok louise, if the state of the buttons are Up, then that is the default and nothing is added after Clear.
17:13 @Ensign_H: If the button is Down, then we add a script line so we will put the button in the down state, and this applies to Study Lock, Line Lock, and Price Magnet buttons.
17:16 Louise: not sure you what you mean by "button is down"
17:17 @Ensign_H: louise, some of the toolbar buttons have an Up state and a Down (depressed) state so the button is used to indicate if a mode is enabled (down) or disabled (up)
ESPL
17:13 JakesterNJ: Hello guys, I have a request relating to ESPL programming....
17:13 @Ensign_H: ok Jake, ask
17:15 JakesterNJ: I am a recent Ensign convert from eSignal... I did extensive programming in their JAVA EFS language including some automatic trading software. Trouble is.. I need to call some C++ (ideally) DLL routines for my Ensign work. Do you guys have a simple example DLL source for C++ that will give me an idea of the skeleton of it?
17:16 JakesterNJ: I know the web site mentioned 'C' and also visual basic so Visual C++ should not be too far out of line. My automated trading routines (BUY, SELL, etc) are all Visual C++.
17:18 @Ensign_H: Jake, we have a few DLL interfaces in ESPL, and the one generic DLL interface is published in the ESPL documentation.
17:18 Louise: ok thank you
17:18 JakesterNJ: I saw the one ESPL example on the web site 'help' pages but that's not enough. Where can I get more on DLL interfaces?
17:19 @Ensign_H: If you have the ability to recompile your DLL then you should be able to make the generic DLL interface work for you where we are passing a series of integer variables and a short string.
www.ensignsoftware.com/espldoc/dll.htm
17:20 JakesterNJ: Thanks but I need the basic C++ source code for a DLL, the 'skeleton' of the ESPL.DLL file source but written in C++ (ideally) or C
17:20 JakesterNJ: The posting you just showed me above is what I already read... That is in DELPHI source.
17:21 @Ensign_H: I do not think I have a C or C++ example, but we might ask Mike tomorrow if he has such an example as he is our C programmer
17:21 JakesterNJ: Begin, end are Delphi (and PASCAL) constructs, your ESPL Delphi code is really close to PASCAL which I am really familiar with.
17:21 JakesterNJ: That would be great (asking Mike).
17:21 @Ensign_H: Delphi is based on Pascal origins
17:22 JakesterNJ: I wear Pascal as a second skin...it's my FAVORITE programming language..
17:22 @Ensign_H: is it from borland?
17:22 JakesterNJ: Whenever I need to whip up a utility quickly, I do it in Pascal... Of course. Borland... I love their TURBO PASCAL and was on board from their version 2.0 !!!
17:23 @Ensign_H: well, this Delphi is from Borland too, and is the RAD platform of their earlier Pascal origins.
17:25 JakesterNJ: Thanks for you help on this, I'll try getting hold of Mike tomorrow during the trading day. Is that correct?
17:26 @Ensign_H: yes, Jake, come to support and get a hold of Paul and he can get Mike into the room for your questions
17:26 JakesterNJ: One last question... what do I have to do to get Ventrilo working?
17:26 @Ensign_H: Mike is usually on the phone, and Paul staffs this room.
17:26 tradinoncoffee: Howard, would it be possible to enhance the Pesavento Pattern study, allowing us to control the location of the markers on the uptrend and downtrend, similar to alerts...above 1,2,3,4 etc...this would allow overlaying of Pesavento tools showing bar count and delta price, for instance. In addition, sometimes current info gets buried in the bars and cant be seen.
17:28 @Ensign_H: toc, have a note written to investigate your request for pp and marker location choices.
17:28 tradinoncoffee: Howard...TY
QnA
17:30 Rice: Howard, do any trend strength studies based on tests for serial correlation appear on your 'to do' list?
17:31 @Ensign_H: no rice.... need to tell me more about the 'serial correlation' part.
17:31 Rice: .simple example is the Random Walk Index, which is basically n period momentum/(ATR(30)*sqrt(n)
7:33 Rice: if you can point me to something similar in the espl examples I can play with it; it's simple enough that a total nonprogrammer like me might manage. Don't know the espl for a dialog box to adjust the period though.
http://www.ensignsoftware.com/espl/espl17.htm
17:34 @Ensign_H: there is an example rice
17:35 @Ensign_H: iPeriod:=GetUser(eParm1);
17:35 @Ensign_H: this line of code is reading the first parameter from the study property form, which in the example is like your N period
17:36 Rice: k, who should I run to if (probably when) I get stuck? Paulo in support?
17:36 @Ensign_H: no rice, run ESPL questions by Kimball@ensignsoftware.com
17:36 Rice: thanks
17:36 @Ensign_H: he is the ESPL expert, and the one who wrote the ESPL documentation manuals
QnA


7:32 Huios: Howard... I set a GV alert using slings for my htf... the alert does not turn off after the conditions are not met... ie 10R... bline is not blue but alert still on in 2R... how do I fix
17:33 @Ensign_H: I would have to see the alert property form and the why the GV are getting set - possibly you have the True state setting a GV but never have the opposite that the False also sets the same GV


17:37 @Ensign_H: huios, is H_06 intended to be a complete alert?? if so, you need to set the Global Flag selection in both panel A and panel B
17:37 @Ensign_H: I think the selection you intend to have is Flag

17:38 @Ensign_H: so panel A is the boolean Flag from GV[48] and that is being ANDed with the boolean flag GV[56]
17:38 Huios: both need to be true for the alert to show
17:39 @Ensign_H: the H_07 form is going to find the maximum value from [40] [41] [42] [43] and be True when the value is above 79
17:40 @Ensign_H: huios, do not need H_08 alert at all, the test can be done by H_07 directly - so you have alert H_06 and H_07 and you want to combine these so when both are True you have the alert?
17:41 @Ensign_H: in which case you will need to add another alert object that reads the Study Flag and panel A gets the H_06 alert and panel B get this the Study Flag for alert H_07
17:42 Huios: I did it like this... ribbons using max# or min# and set them as two separate gv... then set the bline above 79 and below 21 and did 2 separate gv... then combined them to get the alert
17:43 @Ensign_H: well, in my opinion H_07 will do directly what you tried to do in H_08 so H_08 is unnecessary
17:43 Huios: yes to your question... both true gets the alert... max# ribbon and bline<21 true gets alert "sling short"
17:44 Huios: I'll look over it again... the alert forms.. just stays on after conditions are not met anymore
17:44 @Ensign_H: ok, go fix H_06 to be a complete form by selecting FLAG for the 2nd drop down box - remove H_08 - and add a new alert to read H_06 and H_07 for the final Both True testing
17:46 Huios: I think I get it.. will do and let you know how it works... thanks H
Change in symbol - add .Z to calculated symbols
17:54 @Ensign_H: IQFeed announced yesterday that they will change all Calculated symbols to have a .Z suffix, so TRIN becomes TRIN.Z
17:54 @Ensign_H: yes TICK to TICK.Z affects all calculated symbols
18:01 @Ensign_H: Thanks for attending class today.... hope some of the Q&A and other information covered was of value to many of you...... bye.