Hi, I think you're almost there.
I would make sure you format the date in the original table and the date in the right join the same. I imagine the date is coming through like you said as a timestamp, and the max(...) is returning a number.
timestamp(Load_Date) as Load_Date
right join (xxx)
timestamp(max(Load_Date)) as Load_Date
The other thing you could try is the firstSortedValue() function, but you would need to repeat it for every field. This returns the first value, for a field in a specified sort order. You would need to group by company name, as this is an aggregated function.
firstsortedvalue([positive_percent],Load_date) as positive_percent,
firstsortedvalue([negative_percent],Load_date) as negative_percent,
GROUP BY Company_Name;
I prefer the "right join" solution though!