Jump to content

Welcome to the new Traders Laboratory! Please bear with us as we finish the migration over the next few days. If you find any issues, want to leave feedback, get in touch with us, or offer suggestions please post to the Support forum here.

  • Welcome Guests

    Welcome. You are currently viewing the forum as a guest which does not give you access to all the great features at Traders Laboratory such as interacting with members, access to all forums, downloading attachments, and eligibility to win free giveaways. Registration is fast, simple and absolutely free. Create a FREE Traders Laboratory account here.

GRANDEUR

Intraday Orders (EL)

Recommended Posts

Please, help me to code the following simple algorithm.

A new day begins. Then I want that a highest high (HH) of the day to be calculated. If a HH is created then I want to place my sell short stop next bar at X points below HH. The stop must be active till the end of the day until it's executed. An exit is at the end of the day. If the stop is not executed that day then the same condition but with new parameters takes place next day.

Here is a picture of what I'm telling about:

http://file.qip.ru/file/129903846/98832aca/Picture3.html

 

I was able to write a code that sells short only on the next bar after a HH is formed and the condition is fulfilled, but I want that my stop be active until the end of the day.

Edited by GRANDEUR

Share this post


Link to post
Share on other sites
Come on guys, there must be someone who knows the answer on my question!

 

write out your thoughts step by step,

line by line.

 

write them out one action at a time,

one action per line...

one action per line...

one action per line...

one action per line...

 

eventually you will get there.

Share this post


Link to post
Share on other sites

1. 30-min timeframe.

2. A new day begins (today).

3. If high of a bar > all previous highs of today so far then that high is 'highesthigh' (HH).

4. HH is calculated each bar during the day.

5. We place a sell short stop order at (HH - 50 points).

6. That stop must be active till the end of the day.

7. If the order is not executed next bar and a new HH is formed then we cancel the order and place a new sell short order with the parameters as in (5).

8. If the order is not executed till the end of the day then we cancel the order.

9. If the order is executed then we buy to cover at the end of the day.

10. Loop.

Share this post


Link to post
Share on other sites
....

 

I was able to write a code that sells short only on the next bar after a HH is formed and the condition is fulfilled, but I want that my stop be active until the end of the day.

 

if you don't post your work-in-progress,

are you expecting someone to do all the work for you?

Share this post


Link to post
Share on other sites

Sorry, I got it. I just edited #3 of the list above:

3.If high of a bar > all previous highs of today so far AND IT IS > (TODAY'S OPEN+100) then that high is 'highesthigh' (HH).

 

Here is what I wrote so far:

if time=0930 then value1=open;

if entriestoday(date)<1 and time>0930 and time<1630 and h>(value1+100) then value2=h;

if entriestoday(date)<1 and time>0930 and time<1630 and h>(value1+100)

then sell short next bar at (value2-50) stop;

if time>1630 then buy to cover next bar at market;

 

When I apply this code, trades are executed not at (HH-50) during the day but at (high [of the bar prior to entry]-50).

Share this post


Link to post
Share on other sites

some house keeping first:

 

1. avoid using generic variables... ie value1, value2, etc.,

always create a meaningful variable names,

because you will come back to the code 3 months from now

and you have to scratch your head wondering what value101 is about.

 

you have mention HH, why are you not using it in your code?

 

2. tag your codes, so that it is easy for everybody to read

 

tagged codes look like this:

 

// This is tagged code

if time=0930 then value1=open;
if entriestoday(date)<1 and time>0930 and time<1630 and h>(value1+100) then value2=h;
if entriestoday(date)<1 and time>0930 and time<1630 and h>(value1+100)
then sell short next bar at (value2-50) stop;
if time>1630 then buy to cover next bar at market;

Edited by Tams

Share this post


Link to post
Share on other sites
1. 30-min timeframe.

2. A new day begins (today).

3. If high of a bar > all previous highs of today so far then that high is 'highesthigh' (HH).

4. HH is calculated each bar during the day.

5. We place a sell short stop order at (HH - 50 points).

6. That stop must be active till the end of the day.

7. If the order is not executed next bar and a new HH is formed then we cancel the order and place a new sell short order with the parameters as in (5).

8. If the order is not executed till the end of the day then we cancel the order.

9. If the order is executed then we buy to cover at the end of the day.

10. Loop.

 

Sorry, I got it. I just edited #3 of the list above:

3.If high of a bar > all previous highs of today so far AND IT IS > (TODAY'S OPEN+100) then that high is 'highesthigh' (HH).

 

Here is what I wrote so far:

if time=0930 then value1=open;

if entriestoday(date)<1 and time>0930 and time<1630 and h>(value1+100) then value2=h;

if entriestoday(date)<1 and time>0930 and time<1630 and h>(value1+100)

then sell short next bar at (value2-50) stop;

if time>1630 then buy to cover next bar at market;

 

When I apply this code, trades are executed not at (HH-50) during the day but at (high [of the bar prior to entry]-50).

 

approach to coding...

 

your logic description (1st quote) should mirror the code (2nd quote),

so that you can go through the required tasks line-by-line.

Share this post


Link to post
Share on other sites
Sorry, I got it. I just edited #3 of the list above:

3.If high of a bar > all previous highs of today so far AND IT IS > (TODAY'S OPEN+100) then that high is 'highesthigh' (HH).

 

Here is what I wrote so far:

if time=0930 then value1=open;

if entriestoday(date)<1 and time>0930 and time<1630 and h>(value1+100) then value2=h;

if entriestoday(date)<1 and time>0930 and time<1630 and h>(value1+100)

then sell short next bar at (value2-50) stop;

if time>1630 then buy to cover next bar at market;

 

When I apply this code, trades are executed not at (HH-50) during the day but at (high [of the bar prior to entry]-50).

 

more housekeeping before we get into the nitty-gritty..

 

organize your thoughts/logics,

separate the "global" requirement from the detail logics

so that the code does not look crowded.

i.e. make it easy to read and debug.

 

e.g.

you can separate this requirement from the detail logics

time>0930 and time<1630

 

var:
trading.hour(false);

trading.hour = time>0930 and time<1630;

if trading.hour = true then
begin
    {--- write your codes here---}
end;

Share this post


Link to post
Share on other sites

write out your thoughts step by step,

 

Xcellent TAMS (as always) and so patient...

 

It's good 2 follow your logic process 2 built an algorytm

 

After it's a question of reading the EL manual, ain't it ?! ;)

 

rgds

Share this post


Link to post
Share on other sites
write out your thoughts step by step,

 

Xcellent TAMS (as always) and so patient...

 

It's good 2 follow your logic process 2 built an algorytm

 

After it's a question of reading the EL manual, ain't it ?! ;)

 

rgds

 

Yes... reading the manual is a must.

 

EasyLanguage has been around for ~20 years;

their manuals and tutorials are the result of years of refinement,

no other trading programming language can rival its

breadth and depth in coverage and code samples.

 

I would dare to say, practically anything that you can imagine, has been done.

It is only a matter of time to search out the fragment of code that is floating around in the ether space.

Share this post


Link to post
Share on other sites

I am also learning easy language since few days, so lets learn together

1) I think you need to write the function for new high for the day, as there is only default indicator( Not sure about TS, my platform is MC), not default function..function will be like this

variables: var0( 0 ) ; 

if BarType < 2 then begin                         
if Date <> Date[1] then
	var0 = High 
else if High > var0 then 

	var0 = High ;

	NEWHD=var0;
	end  ;

 

2)write most of the inputs when u want to use numbers within code.

So your 50 point below new high of the day will look like this

 

Inputs: filter(50),opentime(0930),closetime(1630);
vars:trigger(0),newhdShort(false) ;
trigger = newhd[1] - filter ; 
If marketposition = 0 then
begin
newhdShort =  (time > opentime and time < closetime) and high <= newhd[1] - filter ;
If newhdshort then sell short next bar at trigger stop ; 
setexitonclose ; 
end;

 

Thats the rough code i have posted, you can improvise on that as per your specific need.

Share this post


Link to post
Share on other sites

Alex, thank you for you reply!

Your approach appeals to me. I am also using MultiCharts but it fails to compile the function you wrote. The error is 'assignment is allowed only for variables or array elements' and 'NEWHD' is highlighted. Why is that? I've never created any functions, only signals. Maybe there is a mistake there.

And as for variables assignment under 'inputs', I know about that. I just wanted to write the code as small as possible not loading people with lots of words.

Share this post


Link to post
Share on other sites
Alex, thank you for you reply!

Your approach appeals to me. I am also using MultiCharts but it fails to compile the function you wrote. The error is 'assignment is allowed only for variables or array elements' and 'NEWHD' is highlighted. Why is that? I've never created any functions, only signals. Maybe there is a mistake there.

And as for variables assignment under 'inputs', I know about that. I just wanted to write the code as small as possible not loading people with lots of words.

 

in MC make a new function > give a name NEWHD > now copy pest my above posted function. It should work/ compile. Trick is giving name to the function. Later make new signal, give any name, and copy pest second code. Let me know if have any further issues.

Share this post


Link to post
Share on other sites

I am new to making functions and named the function you posted not 'NEWHD'.

Although, the code doen't work OK so far (there comes only one trade for many mounths), I hope my tuning will help. Alex, thank you so much!

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Topics

  • Posts

    • Date: 2nd May 2024. Market News – Stocks mixed; Yen support still on; Eyes on NFP & Apple tonight. Economic Indicators & Central Banks:   As the Fed maintained a “high-for-longer” stance, stocks gave up their gains with attention turning back to earnings. Chair Powell and the Fed were not as hawkish as feared and the markets reacted immediately and in textbook fashion to the still dovish policy stance. The Fed flagged that recent disappointing inflation readings could make rate cuts a while in coming, but Fed chief Jerome Powell characterized the risk of more hikes as “unlikely,” giving some solace to markets. Stocks traded mixed across Asia, while in Europe, DAX and FTSE futures are finding buyers and US futures are also in demand, after the Fed’s message. Yen: Another suspected intervention by authorities, this time in late New York trading, ran into resistance from traders keen to keep selling the currency. Swiss CPI lifted to 1.4% y/y in April from 1.0% y/y in the previous month. Headline numbers are still at low levels and base effects play a role, with the different timing of Easter this year also likely to distort the picture. That said, the numbers may not question the SNB’s decision to cut rates, but they do not support another rate cut in June. Financial Markets Performance:   The USDIndex has corrected to 105.58, but USDJPY is already inching higher again, after a sharp drop to a low of 153.04 on Tuesday that sparked fresh intervention speculation. The pair is currently trading at 155.38. Treasury yields plunged and were down over double digits before profit taking set in. USOIL finished with a -3.6% loss to $79.00, the lowest since March 12. Currently it is as $79.53. Gold was up 1.4% to $2319.55 per ounce, reclaiming the $2300 level. Market Trends:   Wall Street climbed initially with gains of 1.4% on the NASDAQ, 1.2% on the Dow, and 0.96% on the S&P500. The NASDAQ and S&P500 closed with losses of -0.3%, while the Dow was 0.23% firmer. The Hang Seng rallied more than 2%, and the ASX also posting slight gains, while CSI 300 and Nikkei declined. Apple’s earnings report is due after the US market closes today, will give investors a better sense of how the iPhone maker is weathering a sales slump, due in part to a sluggish China market. Always trade with strict risk management. Your capital is the single most important aspect of your trading business. Please note that times displayed based on local time zone and are from time of writing this report. Click HERE to access the full HFM Economic calendar. Want to learn to trade and analyse the markets? Join our webinars and get analysis and trading ideas combined with better understanding on how markets work. Click HERE to register for FREE! Click HERE to READ more Market news. Andria Pichidi Market Analyst HFMarkets Disclaimer: This material is provided as a general marketing communication for information purposes only and does not constitute an independent investment research. Nothing in this communication contains, or should be considered as containing, an investment advice or an investment recommendation or a solicitation for the purpose of buying or selling of any financial instrument. All information provided is gathered from reputable sources and any information containing an indication of past performance is not a guarantee or reliable indicator of future performance. Users acknowledge that any investment in FX and CFDs products is characterized by a certain degree of uncertainty and that any investment of this nature involves a high level of risk for which the users are solely responsible and liable. We assume no liability for any loss arising from any investment made based on the information provided in this communication. This communication must not be reproduced or further distributed without our prior written permission.
    • $CHWY Chewy stock breakdown watch, https://stockconsultant.com/?CHWY
    • $PYXS Pyxis Oncology stock low volume pullback to 4.32 support area, high trade quality, https://stockconsultant.com/?PYXS
    • $EVER EverQuote stock strong day, breakout, https://stockconsultant.com/?EVER
    • Date: 1st May 2024. Understanding the Implications of the FOMC Meeting. The FOMC will issue its post-meeting statement at 18:00 GMT tonight. “High-for-longer” is the expected outcome (but not higher) given more indications that progress on bringing inflation sustainably down to the 2% target has stalled out. With no new quarterly forecasts, it will be all about Chair Powell’s press conference when the Fed announces its policy stance tonight.   It is unlikely to be any more hawkish than what the markets are pricing in. Indeed, Chair Powell will have to acknowledge that the data are going the wrong way and he may even pre-empt the likely first question out of the box, “is a rate hike in the cards?” Meanwhile, Fed funds futures have not only fully priced out chances for a rate cut for this meeting and for June, but July as well. Risk for a reduction in September fell to below 50-50 on the initial spike in implied rates on the ECI news. The November contract reflects 20 bps in cuts, with a full quarter point easing now not seen until December. The FOMC is also expected to announce a slowing in Treasury runoff for June.   Economic Projections & Market Interpretation: The March update of the SEP revealed notable adjustments in key economic indicators. GDP forecasts for 2024 experienced a substantial upward revision, reflecting a more optimistic outlook with a growth rate of 2.1%, up from 1.4% in December. Similarly, projections for 2025 saw improvements, with the median jobless rate forecasts showing mixed trends but generally aligning with recent patterns. Expectations for headline and core PCE chain price indices also witnessed slight adjustments, indicating potential shifts in inflation dynamics. During the March meeting, the “dot plot” estimates hinted at a dovish stance by Fed members, with no indications of further rate hikes and median estimates suggesting potential rate cuts in 2024. This interpretation led markets to anticipate the initiation of quarterly rate cuts starting in June. As investors await the June SEP update, there is speculation about further adjustments in GDP estimates, PCE chain price indices, and the potential revision of rate cut expectations.   Analyzing the labor market reveals a complex picture of recovery and ongoing challenges. Payrolls have shown resilience in 2024, surpassing the previous year’s averages, albeit with variations across sectors. Despite improvements, the jobless rate remains a focal point, with fluctuations reflecting broader economic conditions. Additionally, metrics like the U-6 rate and wage growth provide insights into the labor market’s health and potential inflationary pressures.   Inflation Trends and Consumption Patterns: Inflation dynamics have been closely monitored, particularly amid recent fluctuations in commodity prices and supply chain disruptions. While recent CPI and PCE chain price measures suggest some moderation in inflationary pressures, concerns linger about the sustainability of these trends. The Fed’s attention to inflation remains paramount, shaping expectations for future policy actions. Consumer spending, a key driver of economic growth, has exhibited resilience despite ongoing uncertainties. Real personal consumption expenditures (PCE) have maintained positive growth rates, contributing to overall GDP expansion. However, shifts in consumption patterns and potential impacts on future economic performance warrant careful observation.   Market Expectations and Implications: As the FOMC meeting approaches, market participants are closely monitoring economic indicators and policy developments for insights into future market dynamics. The verbiage of the Fed statement and subsequent press briefing will be scrutinized for any hints regarding the timing of potential policy adjustments. Investors should remain vigilant and adaptable, considering the evolving economic landscape and its implications for investment strategies. The upcoming FOMC meeting holds significant implications for investors and economic stakeholders. Understanding recent economic developments, market expectations, and potential policy shifts is essential for navigating the dynamic financial environment. By staying informed and proactive, investors can position themselves to capitalize on emerging opportunities while managing risks effectively. Always trade with strict risk management. Your capital is the single most important aspect of your trading business. Please note that times displayed based on local time zone and are from time of writing this report. Click HERE to access the full HFM Economic calendar. Want to learn to trade and analyse the markets? Join our webinars and get analysis and trading ideas combined with better understanding on how markets work. Click HERE to register for FREE! Click HERE to READ more Market news. Andria Pichidi Market Analyst HFMarkets Disclaimer: This material is provided as a general marketing communication for information purposes only and does not constitute an independent investment research. Nothing in this communication contains, or should be considered as containing, an investment advice or an investment recommendation or a solicitation for the purpose of buying or selling of any financial instrument. All information provided is gathered from reputable sources and any information containing an indication of past performance is not a guarantee or reliable indicator of future performance. Users acknowledge that any investment in FX and CFDs products is characterized by a certain degree of uncertainty and that any investment of this nature involves a high level of risk for which the users are solely responsible and liable. We assume no liability for any loss arising from any investment made based on the information provided in this communication. This communication must not be reproduced or further distributed without our prior written permission.
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.